【转载自:http://linluan55.blog.163.com/blog/static/17554239920110187141222/】
QTextEdit窗口部件提供了强大的单页面的多信息文本编辑器。
介绍和概念
QTextEdit是一个高级的所见即所得的支持使用HTML风格标记的多信息文本格式的查看器/编辑器。它对于处理大文档和快速相应用户的输入进行了优化。
QTextEdit操作的三个模式:
模式
命令
注释
一般文本编辑器
setTextFormat(PlainText)
使用setText()设置文本,text()可以返回一般文本。文本属性(比如颜色)可以被设置,但是一般文本总是被返回。1.
多信息文本编辑器
setTextFormat(RichText)
使用setText()设置文本,text()可以返回多信息文本。多信息文本编辑是相当受限制的。例如你不能设置边白或者插入图片(尽管你可以读取并且正确地显示具有边白和包含图片的文件)。这个模式对于编辑少量的多信息文本是非常有用的。2.
文本查看器3.
setReadOnly(TRUE)
使用setText()或append()(这个没有撤销历史,所以更快并且使用更少的内存)来设置文本,text()根据textFormat()返回一般文本或者多信息文本。这个模式可以正确显示HTML中一个比较大的子集。
1.我们不建议使用QTextEdit来创建语法高亮的编辑器,因为现在的应用编程接口对于这个目的是不够的。我们希望能在以后的发行中发行一个支持语法高亮的更加完整的应用编程接口。
2.在稍后的Qt发行中计划推出一个更完整的支持设置边白、图片等等的应用编程接口。
3.Qt
3.1将提供一个日志浏览器模式,它是专门为快速地并且有效使用内存地显示大量的只读文本而优化的。
我们建议你总是调用setTextFormat()来设置你想使用的模式。如果你是用AutoText,那么setText()和append()将会试图决定给定的文本是一般文本还是多信息文本。如果你使用RichText,那么setText()和append()总是假设给定的文本是多信息文本。insert()简单的插入给定的文本。
QTextEdit在段落和字符上工作。段落就是被自动换行来适应窗口部件的宽度的被格式化的字符串。默认情况下当读取一般文本时,两个换行符确定一个段
落。一个文档由零或更多个段落组成,索引从0开始。字符是基于每一个段落来被索引的,也是从0开始。段落中的单字根据段落的alignment()进行对齐。段落被硬换行分隔。段落中的字符都有自己的属性,例如字体和颜色。
文本编辑文档使用如下概念:
当前格式 -- 这是当前光标位置的格式