Qt常用控件——QTextEdit
文章目录
- QTextEdit核心属性和信号
- 同步显示示例
- 信号示例
QTextEdit核心属性和信号
QTextEdit
表示多行输入框,是一个富文本和markdown编辑器,并且能在内存超出编辑框范围时自动提供滚动条。
QPlainTexEdit
是纯文本,QTextEdit
不仅表示纯文本,还支持html和markdown。它们的功能差不多,本篇就以
QTextEdit
为示例
核心属性:
属性 | 说明 |
---|---|
markdown | 支持markdown格式 |
html | 支持html |
placeHolderText | 输入框为空时有提示内容 |
readOnly | 是否只读 |
undoRedoEnable | 是否开启undo/redo功能 按下ctrl + z 触发undo(撤销) 按下ctrl + y 触发redo(取消撤销) |
autoFormating | 开启自动格式化 |
tabstopWidth | 按下缩进多少空间 |
overwriteMode | 是否开启写覆盖 |
acceptRichText | 是否接受富文本 |
verticalScrollBarPolicy | 垂直方向出现滚动条策略:Qt::ScrollBarAsNeeded :根据内容自动决定是否需要滚动条(默认)Qt::ScrollBarAlwaysOff :总是关闭滚动条Qt::ScrollBarAlwaysOn :总是出现滚动条 |
horizontalScrollBarPolicy | 水平方向出现滚动条策略: 同上 |
核心信号:
信号 | 说明 |
---|---|
textChanged() | 文本内容改变时触发 |
selectionChanged() | 选中范围时触发 |
cursorPositionChanged() | 光标移动触发 |
undoAvailable(bool) | 可以进行undo操作时触发 |
redoAvailable(bool) | 可以进行redo操作时触发 |
copyAvaiable(bool) | 文本被选中/取消选中时触发 |
同步显示示例
创建一个界面,里面包含多行输入框,获取里面的内容,同步显示到label
当中
#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);
}Widget::~Widget()
{delete ui;
}void Widget::on_textEdit_textChanged()
{//获取内容const QString& text = ui->textEdit->toPlainText();ui->label->setText(text);
}
信号示例
#include "widget.h"
#include "ui_widget.h"
#include<QDebug>
Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);
}Widget::~Widget()
{delete ui;
}void Widget::on_textEdit_textChanged()
{qDebug() << "textChanged: " << ui->textEdit->toPlainText();
}void Widget::on_textEdit_selectionChanged()
{//描述当前光标情况QTextCursor cursor = ui->textEdit->textCursor();qDebug() << "selectionChanged: " << cursor.selectedText();
}void Widget::on_textEdit_cursorPositionChanged()
{QTextCursor cursor = ui->textEdit->textCursor();qDebug() << "cursorPositionChanged: " << cursor.position();
}void Widget::on_textEdit_undoAvailable(bool b)
{qDebug() << "undoAvailable: " << b;
}void Widget::on_textEdit_redoAvailable(bool b)
{qDebug() << "redoAvailable: " << b;
}void Widget::on_textEdit_copyAvailable(bool b)
{qDebug() << "copyAvailable" << b;
}
相关文章:

Qt常用控件——QTextEdit
文章目录 QTextEdit核心属性和信号同步显示示例信号示例 QTextEdit核心属性和信号 QTextEdit表示多行输入框,是一个富文本和markdown编辑器,并且能在内存超出编辑框范围时自动提供滚动条。 QPlainTexEdit是纯文本,QTextEdit不仅表示纯文本&a…...

docker-compose 部署 flink [支持pyflink]
下载 flink 镜像 [rootlocalhost ~]# docker pull flink Using default tag: latest latest: Pulling from library/flink 762bedf4b1b7: Pull complete 95f9bd9906fa: Pull complete a880dee0d8e9: Pull complete 8c5deab9cbd6: Pull complete 56c142282fae: Pull comple…...
C++中string类的模拟实现
目录 1.string类的结构 2.默认成员函数 2.1.默认构造函数 2.2拷贝构造函数 2.3赋值运算符重载 2.4析构函数 3.迭代器(Iterators) 4.string类的空间操作(Capacity) 4.1size() 4.2capacity() 4.3clear() 4.4reserve() 5.元素访问(Element access) 6.string类的修…...

C++函数在库中的地址
本文讲述C如何直接调用动态库dll或者so中的函数。 首先我们准备一个被调用库,这个库里面有两个函数,分别是C98 与 C11 下的,名称是run2和run1。 被调用库 相关介绍请看之前的文章《函数指针与库之间的通信讲解》。 //dll_ex_im.h #ifndef…...
图像生成大模型imagen
要生成图像,可以使用深度学习模型,比如 OpenAI 的 DALLE、Google 的 Imagen 等。由于这些模型通常需要较大的计算资源和训练数据,下面是一些如何使用这些模型的基本步骤和方法。 使用预训练图像生成模型 选择模型: 常用的模型包括…...

Redis集群知识及实战
1. 为什么使用集群 在哨兵模式中,仍然只有一个Master节点。当并发写请求较大时,哨兵模式并不能缓解写压力。我们知道只有主节点才具有写能力,那如果在一个集群中,能够配置多个主节点,是不是就可以缓解写压力了呢&…...

数据报表轻松管理,强大“后台”不可少
在数据驱动的时代,制作一份高效、精准的数据报表成为企业管理和决策的重要手段。但要做好数据报表,不仅需要一款功能强大的报表工具,还必须有一个强有力的“后台”管理系统来支撑。那么,为什么报表工具需要一个管理后台࿱…...

简易CPU设计入门:本CPU项目的指令格式
在这一节里面,主要是理论知识,基本上不讲代码。不过,本项目的代码包,大家还是需要下载的。 本项目的代码包的下载方法,参考下面的链接所指示的文章。 下载本项目代码 本节,其实是要讲本项目CPU的指令集。…...
Datawhile 组队学习Tiny-universe Task01
Task01:LLama3模型讲解 仓库链接:GitHub - datawhalechina/tiny-universe: 《大模型白盒子构建指南》:一个全手搓的Tiny-Universe 参考博客:LLaMA的解读与其微调(含LLaMA 2):Alpaca-LoRA/Vicuna/BELLE/中文LLaMA/姜子…...
MCU与SOC的区别
自动驾驶中 MCU 与 SoC 的区别 在自动驾驶系统中,**MCU(微控制单元,Microcontroller Unit)和SoC(系统级芯片,System on Chip)**都是关键的电子元件,但它们在性能、功能和应用领域等…...
51单片机-DS18B20(温度传感器)AT24C02(存储芯片) IIC通信-实验2-温度实时监测(可设置阈值)
作者:王开心 座右铭:刻苦专研,百折不挠,千磨万击还坚韧,任尔东西南北风!干就完了!(可交流技术) 主要利用DS18B20芯片去采集温度,通过采集的温度能够自动保存…...

Vue2接入高德地图API实现搜索定位和点击获取经纬度及地址功能
目录 一、申请密钥 二、安装element-ui 三、安装高德地图依赖 四、完整代码 五、运行截图 一、申请密钥 登录高德开放平台,点击我的应用,先添加新应用,然后再添加Key。 如图所示填写对应的信息,系统就会自动生成。 二、安装…...

msvcp140.dll丢失如何解决?msvcp140.dll丢失的多种解决方法
在计算机使用过程中,我们经常会遇到一些错误提示,其中之一就是“msvcp140.dll丢失”。这个错误通常会导致某些应用程序无法正常运行,给用户带来很大的困扰。那么,当我们遇到msvcp140.dll丢失的情况时,应该如何解决呢&a…...

高效财税自动化软件如何提升企业财务工作的效率与准确性
在当今企业运营中,财务管理发挥着核心作用。它不仅涉及企业正常运转和市场决策,还是推动企业向高质量发展迈进的关键动力。面对激烈的市场竞争与科技革新的双重挑战,财务管理亟需进行持续的转型与提升,为企业高质量发展目标的实现…...
Leetcode 3286. Find a Safe Walk Through a Grid
Leetcode 3286. Find a Safe Walk Through a Grid 1. 解题思路2. 代码实现 题目链接:3286. Find a Safe Walk Through a Grid 1. 解题思路 这一题的话思路上就是一个宽度优先遍历,我们按照health进行排序进行宽度优先遍历,看看在health被消…...

shell脚本语法
shell脚本的变量 系统变量 系统变量是操作系统用来存储配置信息的变量,它们可以控制操作系统的行为和程序的运行环境。系统变量的种类和内容取决于操作系统的类型和版本。以下是一些常见的系统变量类别和它们可能包含的内容: 环境变量:这些…...

TCP 拥塞控制:一场网络数据的交通故事
从前有条“高速公路”,我们叫它互联网,而这条公路上的车辆,则是数据包。你可以把 TCP(传输控制协议)想象成一位交通警察,负责管理这些车辆的行驶速度,以防止交通堵塞——也就是网络拥塞。 第一…...

(黑马点评) 五、探店达人系列功能实现
5.1 发布和查看探店笔记 5.1.1 发布探店笔记 这块代码黑马已经完成了,在发布探店笔记界面,有两块内容是需要上传的。一是笔记内容,二是笔记配图。其中笔记配图部分黑马使用的是上传到本地前端服务器上面的。我我觉得可以将图片文件发布在阿里…...
SQLiteDatabase insert or replace数据不生效
在Android开发中,如果您在SQLite数据库中更新了数据,但重启应用后更新的数据不再生效,那么可能的原因有: 更新操作没有正确执行,可能是由于SQL语句错误或者数据库没有正确打开。 更新操作在事务中没有被正确提交。 更…...
基于Python实现一个浪漫烟花秀
为了实现一个类似烟花秀的效果,我们可以通过复杂的粒子系统来模拟烟花的升起、绽放和下落效果。以下是一个示例,旨在创建更为动态和逼真的烟花秀效果。 示例代码 这个代码示例将使用 matplotlib 和 numpy,并实现更丰富的视觉效果࿱…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)
服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...
python爬虫:Newspaper3k 的详细使用(好用的新闻网站文章抓取和解析的Python库)
更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Newspaper3k 概述1.1 Newspaper3k 介绍1.2 主要功能1.3 典型应用场景1.4 安装二、基本用法2.2 提取单篇文章的内容2.2 处理多篇文档三、高级选项3.1 自定义配置3.2 分析文章情感四、实战案例4.1 构建新闻摘要聚合器…...
【HTML-16】深入理解HTML中的块元素与行内元素
HTML元素根据其显示特性可以分为两大类:块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...

视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)
前言: 最近在做行为检测相关的模型,用的是时空图卷积网络(STGCN),但原有kinetic-400数据集数据质量较低,需要进行细粒度的标注,同时粗略搜了下已有开源工具基本都集中于图像分割这块,…...
怎么让Comfyui导出的图像不包含工作流信息,
为了数据安全,让Comfyui导出的图像不包含工作流信息,导出的图像就不会拖到comfyui中加载出来工作流。 ComfyUI的目录下node.py 直接移除 pnginfo(推荐) 在 save_images 方法中,删除或注释掉所有与 metadata …...
TCP/IP 网络编程 | 服务端 客户端的封装
设计模式 文章目录 设计模式一、socket.h 接口(interface)二、socket.cpp 实现(implementation)三、server.cpp 使用封装(main 函数)四、client.cpp 使用封装(main 函数)五、退出方法…...

归并排序:分治思想的高效排序
目录 基本原理 流程图解 实现方法 递归实现 非递归实现 演示过程 时间复杂度 基本原理 归并排序(Merge Sort)是一种基于分治思想的排序算法,由约翰冯诺伊曼在1945年提出。其核心思想包括: 分割(Divide):将待排序数组递归地分成两个子…...
FOPLP vs CoWoS
以下是 FOPLP(Fan-out panel-level packaging 扇出型面板级封装)与 CoWoS(Chip on Wafer on Substrate)两种先进封装技术的详细对比分析,涵盖技术原理、性能、成本、应用场景及市场趋势等维度: 一、技术原…...
RK3568项目(七)--uboot系统之外设与PMIC详解
目录 一、引言 二、按键 ------>2.1、按键种类 ------------>2.1.1、RESET ------------>2.1.2、UPDATE ------------>2.1.3、PWRON 部分 ------------>2.1.4、RK809 PMIC ------------>2.1.5、ADC按键 ------------>2.1.6、ADC按键驱动 ------…...