TextEdit可以显示多行可编辑的格式化文。默认是无边框的,可以和父控件完美融合。

import QtQuick
import QtQuick.Window
import QtQuick.ControlsWindow {id: winwidth: 800height: 600visible: trueTextEdit {id: textEditanchors.centerIn: parenttext: "Hello,\nWorld!\nThis is a TextEdit control!"font.family: "Arial"font.pixelSize: 20color: "black"selectionColor: "blue"}
}将 focus 属性设置为 true 可以使 TextEdit 组件接收键盘焦点。当点击或使用键盘导航到 TextEdit 时,焦点会自动移动到该组件,允许开始输入文本。
常用属性:
bottomPadding : real
 leftPadding : real
 padding : real
 rightPadding : real
 topPadding : real
设置内容周围内边距的填充。这个空间是除了contentWidth和contenttheight之外保留的
effectiveHorizontalAlignment : enumeration
 horizontalAlignment : enumeration
 verticalAlignment : enumeration
用于设置文本在 TextEdit 组件宽度和高度内的水平和垂直对齐方式。
horizontalAlignment 属性控制文本的水平对齐方式。
- TextEdit.AlignLeft(默认值):文本左对齐
- TextEdit.AlignRight:文本右对齐
- TextEdit.AlignHCenter:文本水平居中
- TextEdit.AlignJustify:文本两端对齐
verticalAlignment 属性控制文本的垂直对齐方式。
- TextEdit.AlignTop(默认值):文本顶部对齐
- TextEdit.AlignBottom:文本底部对齐
- TextEdit.AlignVCenter:文本垂直居中
当使用附属性 LayoutMirroring::enabled 来镜像应用程序布局时,文本的水平对齐方式也会被镜像,但horizontalAlignment 属性值保持不变。
tabStopDistance : real
制表位之间的默认距离。默认情况下,tabStopDistance的值为0,这意味着焦点移动的距离是固定的,通常与文本输入框的宽度或高度有关。但是,您可以通过设置tabStopDistance属性来自定义焦点移动的距离。
textFormat : enumeration
文本显示的方式。
- extEdit.PlainText (默认): 所有的样式标签都被视为普通文本。例如,如果尝试在TextEdit中使用HTML标签或样式,它们将不会按预期显示,而会被视为普通文本。
- TextEdit.AutoText: 通过Qt的mightBeRichText()的启发式方法检测。Qt会尝试自动检测文本是否可能是富文本,但具体行为可能依赖于实际内容。
- TextEdit.RichText: 富文本,a subset of HTML 4。这意味着TextEdit支持HTML 4中的一部分标签,允许在文本中使用一些基本的样式和格式。
- TextEdit.MarkdownText: CommonMark格式,加上适用于表格和任务列表的GitHub扩展(从5.14版本开始)。这意味着TextEdit支持Markdown格式,允许您使用Markdown语法来格式化文本。
textMargin : real
用于指定在 TextEdit 组件中文本周围的边距,单位是像素。这个边距定义了文本与 TextEdit 组件边界之间的空间大小。
wrapMode : enumeration
用于控制文本的换行行为。
- TextEdit.NoWrap(默认值) - 不进行换行。如果文本中没有足够的换行符,那么implicitWidth会超过设定的宽度。
- TextEdit.WordWrap - 只在单词边界进行换行。如果一个单词太长,implicitWidth会超过设定的宽度。
- TextEdit.WrapAnywhere - 在任何位置进行换行,即使是在单词中间。
- TextEdit.Wrap - 如果可能,换行发生在单词边界;否则,它会在行的适当位置发生,即使是在单词中间。
其他属性可以见上一篇博客中对TextInput的解释。