第 8 章:特定小组件类型编辑说明

使用 GUIX Studio,用户可轻松创建和修改组成应用程序 UI 屏幕的 GUIX 小组件。 这些编辑方法大多直观明了。 例如,若要调整小组件的大小,可使用鼠标选择小组件,并拖动小组件边框。 此外,还可在所选小组件的“左侧”/“顶部”/“宽度”/“高度”属性字段中直接键入值。

对于某些小组件类型,用户需要完成更高级的编辑过程,因为这些小组件本身的功能支持更复杂一些。

本章针对这些较复杂的小组件类型介绍更高级的编辑功能。 这些说明将随着 GUIX Studio 功能的发展以及 GUIX 库中所提供小组件类型的增加进行增补。

富文本视图

此小组件用于显示支持内联文本格式代码的富文本。 这些格式代码包括粗体、斜体和多种其他格式代码。 若要开始使用,请在“项目视图”或“目标视图”中右键单击所选父项,并选择“插入”/“文本”/“富文本视图”菜单,以插入富文本视图小组件。

除了所有小组件类型支持的标准属性集以外,富文本视图小组件类型还支持其他属性。

附加属性

属性 含义
文本对齐方式 默认文本对齐方式
正常字体 默认文本字体
粗体字体 文本标记为粗体的文本字体
斜体字体 文本标记为斜体的文本字体
粗体和斜体字体 文本标记为粗体和斜体的文本字体
专用文本副本 如果小组件要为分配的所有文本保留自己的专用副本,则应选中此属性
空格 小组件和显示文本之间的边距宽度(以像素为单位)。
行间距 两行文本之间的间距(以像素为单位)。

富文本格式代码

文本格式支持以下格式代码。

标记 含义
<b></b> 通过用户指定的粗体字体 ID 呈现文本字体
<i></i> 通过用户指定的斜体字体 ID 呈现文本字体
<u></u> 呈现带下划线的文本
<f GX_FONT_ID></f> 使用指定字体 ID 呈现文本。
<c GX_COLOR_ID></c> 使用指定颜色 ID 呈现文本
<hc GX_COLOR_ID></hc> 使用指定背景色 ID 呈现文本
<align left/right/center></align> 分配文本对齐方式

GUIX Studio 中有两种富文本字符串编辑方式:

  • 使用“编辑富文本”对话框,这是建议使用的最简单的编辑方式。
  • 使用“字符串表编辑器”对话框,可手动插入上表中显示的格式标签。

在“目标视图”中选择一种富文本视图小组件后,在“属性视图”中选择“编辑富文本”按钮,以调用富文本编辑对话框,如图 8.1 所示。

Screenshot of the GUIX Studio Edit Rich Text dialog.

图 8.1

左窗格是富文本编辑字段区域。 可以使用工具栏图标帮助自己插入所需标签。 在编辑字段中选择任意文本块,再选择工具栏按钮,以将所需样式和颜色应用于所选文本块。 使用“编辑富文本”对话框,可将格式代码轻松插入测试字符串。 你也可以手动插入这些标签,甚至可以在运行时根据需要生成这些标签。

右窗格是小组件预览区域,可显示文本在目标视图中的呈现方式。 小组件预览的背景色是固定的,可能与小组件在目标视图中分配的背景色不一致。

资源 ID 名称在富文本中用于引用特定字体或颜色资源。 如果字体或颜色的资源名称在富文本字符串对其引用后变更,GUIX Studio 会自动更新富文本字符串,以反映资源名称变更结果。 另外,如果删除富文本小组件所引用的字体或颜色资源,则必须手动编辑受影响的富文本,以删除或更改已删除的资源 ID 名称。

在此对话框中选择“保存”按钮时,已定义的富文本字符串会添加到项目字符串表中。

字符串滚轮

字符串滚轮小组件支持显示字符串数组。 这些字符串可以是动态分配的,如果应用程序支持多种语言,也可以从活动字符串表中提取分配的字符串。

字符串滚轮小组件支持字符串数组。 使用提供的“字符串滚轮编辑”对话框(如图 8.2 所示),用户可分配此字符串数组。

Screenshot of the GUIX Studio String Scroll Wheel Edit dialog.

图 8.2

若要调用此对话框,请在“目标视图”或“项目视图”中选择一种字符串滚轮小组件。 在选择此小组件类型后,“属性视图”将包含“编辑字符串”按钮。 选择此按钮可调用“字符串滚轮编辑”对话框。

若要为每个文本索引分配字符串,可从下拉列表中选择字符串 ID,也可在右侧“文本”字段中键入新字符串值。 完成更改后,将所有新字符串或修改的字符串保存到活动字符串表中。

子画面

子画面小组件可用于显示一系列图像,以提供动画效果。 子画面小组件需要使用帧列表,该列表是一组应用于帧中每个图像的图像 ID 和唯一参数。 若要为子画面小组件构建此帧列表,需提供“编辑子画面帧”对话框(如图 8.3 所示):

Screenshot of the GUIX Studio Edit Sprite Frames dialog.

图 8.3

若要调用此对话框,请在“目标视图”或“项目视图”中选择子画面小组件。 在选择此小组件类型后,“属性视图”将包含“编辑帧列表”按钮。 选择此按钮以调用“编辑子画面帧”对话框。

“子画面总帧数”字段是输入字段,你可输入子画面小组件要显示的总帧数(整数)。 在帧列表中,图像可重复使用,这表示并非每个图像都是唯一的。

“导入帧”按钮允许从像素图文件夹中导入一组帧。 图 8.4 显示了“导入子画面帧”对话框。 可以从左侧选择文件夹,然后在右侧选择想要导入的像素图。

Screenshot of the GUIX Studio Import Sprite Frames dialog.

图 8.4

“子画面帧 ID”字段是帧索引选项值,其范围是 1 到总帧数值。 此值递增和递减时,可从一个子画面帧移到下一个子画面帧。

“应用于所有帧”选项会将帧属性更改应用于所有子画面帧。

每个子画面帧都有多个参数。 第一个参数是“后台操作”。 此字段可模拟常用 GIF 动画格式的功能。 此处的选项包括:

  • 无操作,这意味着在上一帧图像上绘制当前帧图像。
  • 还原第一个像素图,这意味着在当前像素图之前绘制索引 1 像素图
  • 纯色填充,这意味着在绘制当前帧之前,用子画面背景色填充子画面背景。

使用“像素图 ID”字段,可选择以前添加到项目资源中的任何像素图。 同一像素图 ID 可用于多帧图像。 例如,除了使用不同的子画面图像以外,子画面动画还可能利用图像移动功能(使用 x 轴和 y 轴偏移字段)。

“Alpha 值”字段适用于绘制整个像素图。 仅当以 8 bpp 和更高颜色深度运行时,此字段才有效。 如果“Alpha 值”为 0,则图像是完全透明的,如果“Alpha 值”为 255,则图像是不透明的。

你可以使用“帧 x 轴偏移”和“帧 y 轴偏移”字段,指定在子画面帧中绘制当前像素图所使用的偏移量。 换句话说,绘制的每个图像都不一定是完整大小的子画面小组件。

“延迟期”可用于指定移到下一个子画面帧之前延迟的时间。 此值以时钟周期为单位,适用于默认 GUIX/ThreadX 计时器配置,每个时钟周期为 50 毫秒。

在“编辑子画面帧”对话框中保存更改后,GUIX Studio 可在生成输出规范文件过程中生成完整的帧列表数组。

为“子画面”小组件分配 GIF 资源

可以向 Pixelmap 资源组添加 GIF 资源,然后直接将该 GIF 资源分配给子画面小组件。 设置 GIF 资源后,将自动生成一个帧列表,可以通过“子画面编辑”对话框进一步编辑帧列表中的每个帧:

Screenshot of the GUIX Studio Edit Sprite Frames dialog for GIF resource.

图 8.5