首页 > 其他分享 >qt 设置QTextEdit文本框中指定内容块的背景颜色

qt 设置QTextEdit文本框中指定内容块的背景颜色

时间:2024-04-24 16:23:32浏览次数:15  
标签:选区 qt format int QTextEdit 文本框 cursor QTextCursor

效果:

 代码:

void MainWindow::setCheckResultColor(QTextEdit *textEdit, int position, int length, const QColor &color)
{
    // 获取文本编辑器的文本选区
    QTextCursor cursor =  textEdit->textCursor();
    // 将选区移动到指定位置
    cursor.setPosition(position);
    // 将选区扩展到指定长度
    cursor.movePosition(QTextCursor::Right, QTextCursor::KeepAnchor, length);

    // 创建文本格式对象,并设置背景颜色
    QTextCharFormat format;
    format.setBackground(color);

    // 应用格式到选区的文本
    cursor.mergeCharFormat(format);
}

使用:

// 对校验后不同的字节设置背景颜色
    for(int i=0;i<m_checkIndex.size();i++)
    {
        setCheckResultColor(ui->originalBinFile_Edit,m_checkIndex[i],2,Qt::red);
        setCheckResultColor(ui->exportBinFile_Edit,m_checkIndex[i],2,Qt::red);
    }

 

标签:选区,qt,format,int,QTextEdit,文本框,cursor,QTextCursor
From: https://www.cnblogs.com/RedWetPlace/p/18155730

相关文章

  • PyQt5
    概述PyQt是python调动c++编写的Qt,查看类及方法可直接查询qt官网地址 https://doc.qt.io/qt-5/qtwidgets-module.htmlPyQt5.QtCore包含了核心的非GUI功能,主要和时间、文件与文件夹、各种数据、流、URL、mime类文件,进城与线程一起使用PyQt5.QtGui包含了窗口系统、事件处理、2......
  • Python GUI开发- PyQt5 开发小工具环境入门
    前言常见的python开发gui的库有Tkinter,PyQt5,wxPython等。本教程是选择PyQt5开发桌面小工具。环境准备只需pip安装即可快速准备好开发环境pipinstallpyqt5快速开始创建一个空的window窗口Qapplication():每个GUI都必须包含一个Qapplication,argv表示获取命令行参数,如果......
  • QT信号槽机制
    QT信号槽机制例如将按钮点击信号连接到文本框的更新槽函数上点击时按钮发出点击信号文本框接收信号执行更新操作下面通过一个简单的计算球体体积的例子来介绍信号槽机制:dialog.h#ifndefDIALOG_H#defineDIALOG_H#include<QDialog>#include<qlabel.h>#include<qpus......
  • 编译用于Qt的opencv问题解决
    CMakewasunabletofindabuildprogramcorrespondingto"MinGWMakefiles"解释:这个错误表明CMake无法找到用于生成Makefiles的构建程序。在使用CMake生成项目文件时,如果指定了"MinGWMakefiles",CMake需要一个Make工具来构建项目,而这个工具通常是由MinGW提供的。如......
  • QT 程序使用 Framebuffer 显示 UI
    桌面版本的Linux都会带有类似xorg这样的图形服务,桌面程序和应用程序的UI都是通过图形服务渲染的。但是有些系统为了减少系统体积、提升性能,会把图像服务和没有用到的模块裁剪掉,如:嵌入式系统。没有图形服务程序就不能直接渲染显示UI,这时候我们可以使用Framebuffer进行渲......
  • .pro文件管理qt项目,快捷设置软件名称和版本号
    效果: .cpp文件代码:{ui->setupUi(this);//设置软件名称和版本号QStringversion=QCoreApplication::applicationVersion();QStringname=QCoreApplication::applicationName();QStringverInfo="快捷设置软件名称和版本号-版本:V"+vers......
  • Qt short int 数组大小端转换(qbswap)
    在以下情形中,展示了如何将 shortint 数组从大端序转换为小端序,或者从小端序转换为大端序。1#include<iostream>2#include<cstdint>3intmain()4{5constexprintsize=4;6std::uint16_tarr[size]={0x1234,0x5678,0x9abc,0xdef0};7/......
  • [qt]画网格,过分简单了
    源码:#include<QImage>#include<QPainter>voiddrawLines(QImage&image){QPainterpainter(&image);QPenpen(Qt::black);pen.setWidth(2);  //设置线宽2dotpainter.setPen(pen);//绘制水平线,分8份for(inty=89;y<ima......
  • Linux下切换qt程序的字母库
    问题: 在程序切换俄语时字符串都显示空白,说明系统中未有俄语字体库,先下载一个带有俄语的字体库,直接放在/usr/lib/fonts/目录下.  俄语可以正常切换显示之后,却改变了其他语言的字体格式解决:     需要在切换语言时也动态切换原始字体库和俄语字体库......
  • Qt 从 QTransform 逆向解出 Translate/Scale/Rotate(平移/缩放/旋转)分析
    QTransform用于图形绘制,它定义了如何平移(translate)、缩放(scale)、切变(shear)、旋转(rotate)或投射(project)坐标系。注意:QTransform是作用于坐标系,不是直接作用于图形。实际运用中我们可以通过QPainter、QGraphicsView、QGraphicsItem实现图形的平移、缩放、旋转等操作,但是需要从......