Qt常用控件之QTextEdit

Qt常用控件之QTextEdit

🌟🌟hello,各位读者大大们你们好呀🌟🌟

🚀🚀系列专栏:【Qt的学习】

📝📝本篇内容:QTextEdit的简单介绍;实现简单的同步;信号

⬆⬆⬆⬆上一篇:Qt常用控件之QLineEdit

💖💖作者简介:轩情吖,请多多指教(>> •̀֊•́ ) ̖́-

1.QTextEdit的简单介绍

QTextEdit是一个多行输入框,而我们之前讲的QLineEdit是一个单行输入框,并且QTextEdit还是一个富文本+markdown编辑器

接下来还是重点讲它的函数

函数声明 函数说明
QString toHtml() const 以html格式返回
void setHtml(const QString &text) 以html格式来进行设置文本
QString toMarkdown(QTextDocument::MarkdownFeatures features = QTextDocument::MarkdownDialectGitHub)const 以markdown格式返回
void setMarkdown(const QString &markdown) 以markdown格式来进行设置文本
QString QTextEdit::toPlainText() const 以普通文本格式返回
void setText(const QString &text) 以普通文本格式来进行设置文本
QString placeholderText() const 当输入框中没有任何输入时的提示文字
void setReadOnly(bool ro) 设置是否为只读
bool isUndoRedoEnabled() const 按下 ctrl + z 触发 undo即撤销,按下 ctrl + y 触发 redo即撤销撤销
void setAutoFormatting(QTextEdit::AutoFormatting features) 开启自动格式化
void setTabStopDistance(qreal distance) 设置缩进占多少空间
void setOverwriteMode(bool overwrite) 是否开启覆盖写模式
void setAcceptRichText(bool accept) 设置是否支持富文本
verticalScrollBarPolicy 垂直⽅向滚动条的出现策略,Qt::ScrollBarAsNeeded : 根据内容⾃动决定是否需要滚动条。这是默认值; Qt::ScrollBarAlwaysOff : 总是关闭滚动条
horizontalScrollBarPolicy 垂直⽅向滚动条的出现策略,Qt::ScrollBarAsNeeded : 根据内容⾃动决定是否需要滚动条。这是默认值;Qt::ScrollBarAlwaysOff : 总是关闭滚动条

接下来是信号

信号声明 信号说明
void textChanged() ⽂本内容改变时触发
void selectionChanged() 选中范围改变时触发
void cursorPositionChanged() 光标移动时触发
void redoAvailable(bool available) 可以进⾏ redo 操作时触发
void undoAvailable(bool available) 可以进⾏ undo 操作时触发
void copyAvailable(bool yes) ⽂本被选中/取消选中时触发

2.实现简单的同步

我们可以通过这个一个便签控件和多行输入框来完成一个同步功能,非常简单

我们可以通过QTextEdit这个控件的信号来完成,当文本只要发生改变,就会触发信号,此时就可以获取到输入框的内容并设置到label中去

其中之所以一段数字label没有显示出来是因为label长度的原因,设置小了

3.信号

接下来就详细看看这些信号的使用情况

我们只需要一个多行输入框,然后对它每个信号设置槽函数

接下来就是看看什么情况下会触发说明信号

其中的selectionChanged信号它就比较抽象,每次只要你选择的时候鼠标动一动它都会触发
🌸🌸Qt常用控件之QTextEdit大概就讲到这里啦,博主后续会继续更新更多Qt的相关知识,干货满满,如果觉得博主写的还不错的话,希望各位小伙伴不要吝啬手中的三连哦!如有小伙伴需要Qt的安装包可以私信我,你们的支持是博主坚持创作的动力!💪💪

相关推荐
Brilliantwxx5 小时前
【STM32】 SPI阻塞式通信与HAL源码(串口读ID实战)
开发语言·stm32·单片机·嵌入式硬件·ecmascript
吠品6 小时前
Nginx负载均衡配置与线上故障排查的一些经验
java·开发语言·数据库
小小龙学IT6 小时前
Qt QPainter 2D 绘图系统深度解析:从画笔到渲染引擎适
c++·qt
边境悍匪6 小时前
蜗牛学苑 Java 智能体学习 Day44|Vue 前端项目搭建 思维导图复盘
java·开发语言·spring boot·学习·阿里云
wabs6666 小时前
关于二叉树【力扣100.相同的树的思考】
数据结构·c++·算法·leetcode·二叉树·递归法
wuyk5556 小时前
Python实战项目01:简易记事本系统
开发语言·python
小小龙学IT6 小时前
Boost.PFR 开源结构体字段反射库深度解析
c++·开源
程序猿编码6 小时前
零依赖纯手写:C++ 实现完整神经网络,张量反向传播全打通
c++·神经网络·transformer·大模型推理
码匠许师傅6 小时前
【C++三方组件】utfcpp:UTF-8 字符串处理避坑
c++
蒸蒸yyyyzwd6 小时前
八股学习 MVCC 慢查询优化和 read 过程
c++·八股