关于 GUIX 用户指南

本指南包含有关 Azure RTOS GUIX(Microsoft 的高性能 GUI 产品)的综合信息。 本指南面向熟悉基本 GUI 概念、Azure RTOS ThreadX 和 C 编程语言的嵌入式实时软件开发人员。

组织

第 1 章 - Azure RTOS GUIX 简介

第 2 章 - 安装和使用 Azure RTOS GUIX

第 3 章 - Azure RTOS GUIX 的功能概述

第 4 章 - Azure RTOS GUIX 服务说明

第 5 章 - Azure RTOS GUIX 显示驱动程序

Azure RTOS GUIX 示例

附录 A - Azure RTOS GUIX 颜色定义

附录 B - Azure RTOS GUIX 颜色格式

附录 C - Azure RTOS GUIX 小组件样式

附录 D - Azure RTOS GUIX 画笔、画布和渐变属性

附录 E - Azure RTOS GUIX 事件说明

附录 F - Azure RTOS GUIX 绑定服务

附录 G - Azure RTOS GUIX 字体结构

附录 H - Azure RTOS GUIX 生成时配置标志

附录 I - Azure RTOS GUIX 信息结构

指南约定

斜体字样表示书名,强调重要字词并表示变量。

粗体 - 字样表示文件名和关键字,并进一步强调重要字词和变量。

重要

信息符号提示用户注意可能影响性能或功能的重要信息或附加信息。

Azure RTOS GUIX 数据类型

除了自定义的 Azure RTOS GUIX 控制结构数据类型之外,Azure RTOS GUIX 服务调用接口中还使用几种特殊数据类型。 这些特殊数据类型直接映射到基础 C 编译器的数据类型。 这样做是为了确保不同 C 编译器之间的可移植性。 具体实现继承自 ThreadX,可在 ThreadX 分发中包含的 tx_port.h 文件中找到。

下面列出了 Azure RTOS GUIX 服务调用数据类型及其关联的含义:

数据类型 说明
UINT 基本的无符号整数。 此类型映射到最方便的无符号数据类型。
INT 基本的带符号整数。 此类型映射到最方便的带符号数据类型。
ULONG 无符号 long 类型。 此类型必须支持 32 位无符号数据。
VOID 几乎始终等效于编译器的 void 类型。
GX_CHAR 最常通过 typedef 关键字简化为编译器定义的 char 类型。
GX_BYTE 8 位带符号类型。
GX_UBYTE 8 位无符号类型。
GX_VALUE 16 位或 32 位带符号类型。 可根据需要定义,以在目标系统上获得最佳性能。
GX_FIXED_VAL 定点数值数据类型。
GX_RESOURCE_ID 无符号 long 类型。
GX_COLOR 无符号 long 类型。
GX_STRING 包含 GX_CHAR *gx_string_ptr 和 UINT gx_string_length 的结构。
GX_POINT 包含 gx_point_x 和 gx_point_y 的结构。
GX_RECTANGLE 包含 gx_rectangle_left、gx_rectangle_top、gx_rectangle_right 和 gx_rectangle_bottom 字段的结构。
GX_GLYPH 包含字形指标的结构。
GX_FONT 包含字体指标的结构。
GX_BRUSH 包含画笔指标的结构。
GX_PIXELMAP 包含像素映射指标的结构。

Azure RTOS GUIX 源中还使用其他数据类型。 这些数据类型位于 tx_port.h 或 gx_port.h 文件中。

客户支持中心

请按照此处介绍的步骤,在 Azure 门户中提交支持票证,以进行提问或获取帮助。 请在电子邮件中提供以下信息,以便我们可以更高效地解决你的支持请求:

  1. 问题的详细说明,包括发生频率以及能否可靠地重现该问题。

  2. 发生问题前对应用程序和/或 Azure RTOS GUIX 所做的任何更改的详细说明。

  3. 在分发的 tx_port.h 和 gx_port.h 文件中找到的 _tx_version_id 和 _gx_version_id 字符串的内容。 这两个字符串将为我们提供有关运行时间环境的重要信息。

  4. RAM 中以下 ULONG 变量的内容:

    _tx_build_options_gx_system_build_options

    这两个变量将为我们提供有关 Azure RTOS ThreadX 库和 Azure RTOS GUIX 库的生成方式的信息。

  5. RAM 中以下 ULONG 变量的内容:

    _gx_system_last_error_gx_system_error_count

    这两个变量用于跟踪 Azure RTOS GUIX 中的内部系统错误。 如果 _gx_system_error_count 大于 1,请在 _gx_system_error_process 函数的函数返回值中设置一个断点,并在该处提供 _gx_system_last_error 的值。 这将生成第一个内部 Azure RTOS GUIX 系统错误。

  6. 在检测到问题后立即捕获的跟踪缓冲区。 可以通过使用 TX_ENABLE_EVENT_TRACE 生成 Azure RTOS ThreadX 库和 Azure RTOS GUIX 库,并使用跟踪缓冲区信息调用 tx_trace_enable,来捕获跟踪缓冲区。

  7. 所使用的 Azure RTOS GUIX Studio 项目(如果适用),或者至少提供足以演示所报告缺陷的小项目。