鱼C论坛

 找回密码
 立即注册
查看: 2848|回复: 0

[技术原创] 70-深化说明(Img、Table、List)

[复制链接]
发表于 2016-10-10 10:47:29 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

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

我们完成了编辑器的优化,如下所示:
0.jpg


有几点总结,必须要梳理下


  • 如何通过代码完成一个信号与槽的关联

    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)





本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 13:40

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表