Qt 富文本 表格列表图片

1.在mainwindow.cpp添加工具按钮

    //添加工具按钮
    QAction *action_textTable = new QAction("表格",this);
    QAction *action_textList = new QAction("列表",this);
    QAction *action_textIamge = new QAction("图片",this);
    //进行连接
    connect(action_textTable,&QAction::triggered,
            this,&MainWindow::insertTable);
    connect(action_textList,&QAction::triggered,
            this,&MainWindow::insertList);
    connect(action_textIamge,&QAction::triggered,
            this,&MainWindow::insertIamge);

    //添加到工具栏上
    ui->mainToolBar->addAction(action_textTable);
    ui->mainToolBar->addAction(action_textList);
    ui->mainToolBar->addAction(action_textIamge);

2.在头文件里面添加槽函数

    void insertTable(); //插入表格
    void insertList();  //插入列表
    void insertIamge(); //插入图片

 3.对槽函数进行定义

void MainWindow::insertTable()
{
    //对文本进行操作首先要获取光标
    QTextCursor cursor = ui->textEdit->textCursor();
    QTextTableFormat format; //表格格式
    format.setCellSpacing(2); //表格外边白
    format.setCellPadding(10); //表格内边白
    cursor.insertTable(3,3,format); //三行三列
}

void MainWindow::insertList()
{
    //列表格式
    QTextListFormat format;
    //数字编号
    format.setStyle(QTextListFormat::ListDecimal);
    ui->textEdit->textCursor().insertList(format);
}

void MainWindow::insertIamge()
{
    QString filepath = QFileDialog::getOpenFileName(this,
                                                "选择图片",
                                                ".",
                                                "JPEG(*.jpg *.jpeg);;"
                                                "GIF(*.gif);;"
                                                "PNG(*.png)");

    QUrl url(QString("file://%1").arg(filepath));
    QImage image = QImageReader(filepath).read();

    QTextDocument* document = ui->textEdit->document();
    //文档添加图片资源
    document->addResource(QTextDocument::ImageResource,
                          url,QVariant(image));

    QTextCursor cursor = ui->textEdit->textCursor();
    QTextImageFormat imgFormat;
    imgFormat.setWidth(image.width());
    imgFormat.setHeight(image.height());
    imgFormat.setName(url.toString());
    cursor.insertImage(imgFormat);
}

相关推荐

  1. Qt 文本 表格列表图片

    2024-06-07 18:58:01       26 阅读
  2. Qt文本查找

    2024-06-07 18:58:01       26 阅读
  3. Qt——自定义文本RichText

    2024-06-07 18:58:01       33 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-07 18:58:01       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-07 18:58:01       106 阅读
  3. 在Django里面运行非项目文件

    2024-06-07 18:58:01       87 阅读
  4. Python语言-面向对象

    2024-06-07 18:58:01       96 阅读

热门阅读

  1. MTK默认开启Modem Log

    2024-06-07 18:58:01       32 阅读
  2. 在Linux环境中通过Docker运行swift

    2024-06-07 18:58:01       32 阅读
  3. 记录使用pytorch训练crnn

    2024-06-07 18:58:01       26 阅读
  4. Docker 教程-介绍-2

    2024-06-07 18:58:01       28 阅读
  5. elementary OS 8的新消息

    2024-06-07 18:58:01       33 阅读
  6. Spark任务调度

    2024-06-07 18:58:01       29 阅读
  7. SparkStreaming编程-DStream创建

    2024-06-07 18:58:01       26 阅读
  8. 【AIGC调研系列】chatTTS与GPT-SoVITS的对比优劣势

    2024-06-07 18:58:01       26 阅读