文本

您可以使用多个不同的文本组件来向 UI 添加只读或可编辑的文本,例如标题、标签和带有占位文本的文本输入字段。文本组件添加格式化的文本,文本编辑组件添加多行行编辑,文本输入组件添加单行可编辑字段。

您可以选择要使用的字体,并为每个文本字符串指定广泛的属性,例如点大小或像素大小、样式名称、强调、对齐方式和间距。

有关更多信息,请观看以下视频

要创建带背景的标签,请使用位于 组件 > Qt Quick 控件标签 组件。此模块还包含用于创建 文本字段文本区域 控件的组件。与基本组件不同的是,它们应用于它们的一个共同样式,并且您可以为他们指定占位文本。

使用富文本

您可以在 文本文本输入 组件中查找富文本。要打开富文本编辑器,请选择 编辑)按钮,位置在 属性 > 字符 > 文本

在富文本编辑器中,您可以

  • 强调文本
  • 创建超链接
  • 对齐文本
  • 创建项目符号和编号列表
  • 指定文本颜色
  • 选择文本字体
  • 设置字体大小
  • 创建表格

"Text formatted as rich text in the editor"

标记字符串以便翻译

为了支持翻译人员,标记应翻译的字符串。在 属性 > 字符 > 文本 中选择 tr

"tr button in Character section"

默认情况下,文本字符串用 qsTr() 调用括起来。

"Text marked for translation"

如果您使用文本 ID 而不是纯文本,请将默认调用改为 qsTrId()。选择 编辑 > 首选项 > Qt Quick > Qt Quick 设计器,然后在选择“国际化”组中选择 qsTrId 单选按钮。有关更多信息,请参阅基于文本 ID 的翻译

为了在编辑文本时保持上下文,或者通过设置文本属性上的绑定来改变上下文,请通过选择qsTranslate()单选按钮将默认的调用qsTranslate()更改。

有关更多信息,请参阅标记字符串以供翻译

字符属性

您可以在属性中的字符部分设置字体属性。对于在每个文本字段中输入的每个字符串,您都可以在字体字段中选择要使用的字体,并指定文本的大小、强调、对齐和间隔。在大小字段中指定字体大小,单位为点或像素。

"Character properties"

要显示在字体字段中可用字体列表中的自定义字体,您需要先将它们添加到资产中。

  1. 选择资产 >
  2. 选择字体文件,然后选择打开
  3. 添加资源对话框中,选择文件将保存的位置。
  4. 选择确定

权重字段中,您可以从额外轻到额外粗的预定义值列表中选择字体粗细。您还可以使用强调组中的按钮通过使文本加粗、斜体、下划线或删除线来格式化文本。

如果您在样式名称字段中设置了一个样式名称,则字体将与样式名称匹配,而不是与权重强调字段中设置的值匹配。

单词间距字段的值会改变单词之间的默认间距,而字母间距字段的值会改变单词中个别字母之间的间距。正值会增加相应的像素数,而负值会减少。

行高字段的值设置文本的行高。在文本额外部分中的行高模式字段中,选择FixedHeight以像素为单位设置行高,或选择ProportionalHeight(默认)将间距按比例设置为行(作为乘数)。例如,设置为2以实现双倍间距。

文本对齐

您可以水平和垂直对齐文本组件。默认情况下,文本垂直对齐到顶部。水平对齐遵循文本的自然对齐。默认情况下,类似于英文的从左到右的文本对齐到文本区域的左侧,而类似于阿拉伯文的从右到左的文本对齐到文本区域的右侧。

您可以左对齐、右对齐、上对齐或下对齐文本,并水平或垂直居中文本。您可以间距对齐水平文本。

对于单行文本,文本的大小是文本区域的大小。在这种情况下,所有对齐方式都是等效的。为了在父元素中居中文本,请使用锚定或将文本组件的宽度绑定到父元素的宽度。有关更多信息,请参阅设置绑定

文本和样式颜色

您可以设置文本本身的颜色以及由文本样式使用的次级颜色。

对于文本编辑文本输入组件,您还可以在所选文本颜色选择颜色字段中设置所选文本颜色和选择背后的文本高亮颜色。

对于文本字段文本区域控件,您还可以设置占位文本的颜色。

有关选择颜色的更多信息,请参阅选择颜色。您只能为文本组件设置纯色。

高级文本属性

文本组件的高度和宽度将根据您设置的属性值自动确定,以适应在文本字段中指定的字符串长度和字体大小等。您可以在文本附加信息部分指定用于格式化文本的附加属性。

"Text Extras section"

大小模式字段中的值指定了如何确定显示文本的字体大小。选择FixedSize以使用在字符部分中指定的大小字段中的像素或点大小。

选择水平适应垂直适应以使用不超过指定大小的最大尺寸,以便适应组件的宽度和/或高度。选择Fit以使用最大尺寸,使文本适合组件的宽度和高度。适配文本的字体大小由最小大小字段指定的最小边界和由大小字段指定的最大边界确定。

文本的换行和截断

换行模式字段中,您可以将文本换行到文本组件的宽度。只有当您为文本组件设置显式宽度时,文本才会换行。默认情况下,文本不会换行。选择WordWrap仅将换行限制在单词边界。选择WrapAnywhere以在行的任何位置启用换行,即使它出现在单词的中间。选择Wrap以尽可能在单词边界上换行,或者在行的适当位置换行,即使是在单词的中间。

您可以使用涉及Wrap选项的截断属性,将单行纯文本适配到指定宽度。选择ElideRight,并设置最大行数或文本组件的高度(在H字段中)。如果您设置了两者,则除非行无法适应允许的高度,否则将应用最大行数。

如果文本是多长度字符串,并且您将截断属性值设置为ElideNone以外的值,则将使用适合的第一个字符串,否则将截断最后一个字符串。

多长度字符串按照从长到短的顺序排列,由Unicode字符串终止符字符U009C分隔。

格式化文本

文本可以是纯文本或富文本格式,这取决于您在格式字段中设置的值。如果选择AutoText并且文本的第一行包含HTML标签,则文本被视为富文本。富文本支持HTML 4的子集,如支持的HTML子集所述。请注意,纯文本的性能优于富文本。

渲染文本

渲染类型字段中,您可以覆盖文本组件的默认渲染类型。如果您希望文本在目标平台上看起来更接近原生,且不需要诸如变换(如2D变换)的高级功能,请选择原生渲染。使用旋转或缩放配合原生渲染可能导致结果较差,甚至像素化。

如果您选择原生渲染,可以在字体额外选项部分的抗锯齿字段中设置提示偏好。

  • 首选默认抗锯齿使用目标平台的默认抗锯齿级别。
  • 首选无抗锯齿如果可能,将以无抗锯齿渲染文本,不提示字符轮廓。
  • 首选垂直抗锯齿如果可能,按垂直方向提示文本,但将字符与像素网格对齐。
  • 首选全面抗锯齿在水平和垂直方向上均提示文本。

注意:此属性仅描述偏好,因为并非所有Qt支持的平台都支持完整范围内的抗锯齿级别。

高级字体属性

您可以在字体额外选项部分指定字体的附加属性。

"Font Extras section"

大小写字段中,选择混合大小写以执行常规文本渲染(不应用大小写更改)。您还可以将文本全部设置为小写或大写,或使用小写字母。若选择首字母大写选项,则将每个单词的首字母转换为大写字母。

您可以在样式字段中设置字体样式为轮廓凸起凹陷。在样式颜色字段中选择的颜色用于轮廓文本的轮廓颜色,以及凸起或凹陷文本的阴影颜色。

要使用所选字体绘制文本时使用字距调整,请选择自动字距调整复选框。

有时,字体将应用复杂规则到一组字符以正确显示它们。在某些书写系统中,例如梵书面语,这对于使文本可读是必需的,而在其他书写系统,例如拉丁语,这仅是一种外观上的特征。此类功能默认被禁用以提高性能。如果需要,请选择首选变形复选框。

文本输入

您可以使用文本编辑文本输入组件添加文本字段,用户可以在其中输入文本。

文本输入组件显示一行可编辑的纯文本,而文本编辑组件显示可编辑的格式化文本块。这两个组件都用于接受文本输入。

"Text input field properties"

输入密码

您可以设置文本输入组件的属性,使其适合输入密码。

输入掩码字段中,您可以创建一个包含掩码和元字符以及它们之间分隔符的输入掩码。当创建或清除时,文本编辑或输入会被填充为输入掩码字符串的副本,其中元字符已被移除,且掩码字符已被替换为空字符。例如,在一个用于IP地址的输入字段中,您可以使用以下掩码(下划线作为空字符):000.000.000.000;_。有关创建输入掩码的更多信息,请参阅QLineEdit::inputMask的文档。

回显模式字段中,选择密码以显示基于平台的密码掩码字符,而不是用户实际输入的实际字符。选择PasswordEchoOnEdit以显示用户输入时的字符。掩码字符在密码字符字段中显示。

输入文本

您可以指定用户如何将文本输入到文本编辑或输入字段中。

最大长度字段中,设置用户可以输入的最大字符数。

自动滚动复选框的值确定文本编辑或输入区域的文本长度超过字段宽度时是否应滚动。

如果选中了覆盖模式复选框,现有文本将被新文本逐个字符覆盖。否则,新文本将在光标位置插入,并替换现有文本。默认情况下,新文本不会覆盖现有文本。

要防止用户更改文本,请选中只读复选框。

选择文本

选择模式字段中,您可以在使用指针设备选择文本时指定选择个别字符还是整个单词。

选择使用鼠标选择复选框以启用用户以某些特定于平台的某种方式使用鼠标选择文本。对于某些平台,这可能不是合适的交互,因为它可能与文本需要在可翻动组件内部的行为冲突。

对于文本编辑组件,您可以选择使用键盘选择复选框以启用用户即使编辑字段为只读时也能使用键盘选择文本。如果将此属性设置为false,用户即使文本可编辑也无法使用键盘选择文本。

焦点

按住焦点复选框的值确定文本编辑或输入区域在鼠标按下时是否应获得活动焦点。

默认情况下,当文本编辑或输入区域获得活动焦点时,光标会变得可见,以便其他属性可以绑定到光标当前是否显示。因为光标可见属性的值是自动设置的,所以您自己设置的任何值都可能被覆盖。

如果选中了持续选择复选框,文本编辑或输入区域在活动焦点移动到另一个组件时将保持其选择。

制表符和缩进

您可以为文本编辑组件中的文本块格式化指定其他属性。

"Text edit properties"

制表位距离字段中,设置制表位之间的默认距离,以设备单位为单位。

文本缩进字段中,设置文本周围的缩进(以像素为单位)。

填充

填充部分中属性值指定了内容周围的填充。除非您明确设置,否则单个填充属性将采用全局设置的值。

"Padding section"

注意:如果您明确设置了文本编辑或输入的宽度或高度,请确保它足够大,以容纳填充值。如果文本没有足够的垂直或水平空间进行渲染,它将出现裁剪。

占位符文本

对于文本字段文本区域控件,您可以在用户输入文本之前,指定要显示在字段中的文本。在占位文本字段中指定文本,并在占位文本颜色字段中指定其颜色。

"Placeholder text settings"

选择悬停复选框以启用文本字段接收悬停事件。

文本组件概要

以下表格列出了您可以向UI添加的组件。在组件部分中,位置列包含您可以在其中找到组件的选项卡名称。《i>MCU列指示哪些组件在MCU上受支持。

图标名称位置MCU目的
标签Qt Quick控件具有继承样式和字体的文本标签。
文本基本默认组件格式化的只读文本。
文本区域Qt Quick控件多行可编辑的格式化文本。
文本编辑基本默认组件一行可验证的可编辑的格式化文本。
文本字段Qt Quick控件一行可编辑的纯文本。
文本输入基本默认组件一行可验证的可编辑的纯文本。

在特定Qt许可下可用。
了解更多。