|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
在,之前的几个帖子中。
69(http://bbs.fishc.com/thread-77094-1-1.html)
68(http://bbs.fishc.com/thread-77091-1-1.html)
67(http://bbs.fishc.com/thread-77089-1-1.html)
我们完成了编辑器的优化,如下所示:
有几点总结,必须要梳理下
- 如何通过代码完成一个信号与槽的关联
S1 -> 在头文件创建,私有槽声明
- private slots:
- //遍历文档框架
- void show_TextFrame();
- //遍历文本块
- void show_TextBlock();
- //设置字体格式
- void set_TextFont(bool checked);
- //插入列表
- void insert_List();
- //插入表格
- void insert_Table();
- //插入图片
- void insert_Img();
复制代码
S2 -> 构造函数完成动作创建、信号与槽关联
- /*
- * 新建动作
- * 和私有槽关联
- * 添加到工具栏
- */
- QAction *action_Img = new QAction(("图片"),this);
- connect(action_Img,SIGNAL(triggered()),this,SLOT(insert_Img()));
- ui->mainToolBar->addAction(action_Img);
复制代码
S3 -> 完成槽函数相关-
- //列表格式
- QTextListFormat format;
- //数字编号记录,十进制
- format.setStyle(QTextListFormat::ListDecimal);
- ui->textEdit->textCursor().insertList(format);
复制代码 定义
- 表格、列表、图片的其他调用说明
对于表格和列表,也可以使用QTextFrame::iterator来便利他们,具体参考帮助文档(关键字:Rich Text Document Structure)
- 表格对应的QTextTable类,还提供了以下函数:
| | cellAt() | 获取指定单元格 | insertColumns() | 插入列 | insertRows() | 插入行 | mergeCells() | 合并单元格 | splitCell() | 拆分单元格 |
对于一个单元格,其对应类是QTextTableCell,其对应格式是QTextTableCellFormat类
- 对于列表,其对应类是QTextList,提供以下函数:
| | count() | 获取列表中项目个数 | item() | 获取指定的项目的文本块 | removeItem() | 删除一个项目 |
对于列表编号,是用数字编号,需要更多编号方式,请看QTextFormat::Style关键字
- 对于图片,可以使用QTextImageFormat类,提供以下函数:
| | setHeight() | 设置高度 | setWidth() | 设置宽度 | setName() | 来指定图片 |
关于如何调用图片,前面已有很详细的介绍。
忘了的话,自行看之。
(11-13)
|
|