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的安装包可以私信我,你们的支持是博主坚持创作的动力!💪💪

相关推荐
无敌最俊朗@2 小时前
Qt Model/View/Delegate 架构深度解析
开发语言·qt·架构
xiaoxiao无脸男2 小时前
three.js
开发语言·前端·javascript
hnlgzb3 小时前
安卓中,kotlin如何写app界面?
android·开发语言·kotlin
奔跑吧邓邓子3 小时前
【C++实战㊹】解锁C++装饰器模式:实战与技巧全解析
c++·实战·装饰器模式
休息一下接着来3 小时前
C++ 装饰器模式
c++·设计模式·装饰器模式
bkspiderx3 小时前
C++设计模式之结构型模式:装饰器模式(Decorator)
c++·设计模式·装饰器模式
一叶飘零_sweeeet3 小时前
极简 Go 语言教程:从 Java 开发者视角 3 小时入门实战
java·开发语言·golang
BUTCHER53 小时前
Go语言环境安装
linux·开发语言·golang
花心蝴蝶.3 小时前
JVM 类加载
开发语言·jvm·后端