进度条(Progbar)控件也是一种用户数据可视化的控件。类似的控件其实在我们生活中非常常见,例如某些网页的加载过程、 下载软件的下载进度和手机的电池电量等等都有出现进度条。
进度条控件的外观如图 进度条控件外观 所示。
进度条控件不支持任何的通知代码、聚焦操作和按键消息, 也就是说无法在对话框回调函数中通过通知代码操作进度条控件,控件自己也无法响应外部键盘的动作。
28.1. 创建进度条控件
28.1.1. 进度条控件API
28.1.2. 进度条控件创建函数
28.1.2.1. PROGBAR_CreateEx()
在指定位置创建指定大小的进度条控件。
代码清单:进度条-1 函数原型
PROGBAR_Handle PROGBAR_CreateEx(int x0, int y0, int xSize, int ySize,
WM_HWIN hParent, int WinFlags, int
ExFlags, int Id);
-
x0: 进度条控件在父坐标中的最左侧像素;
-
y0: 进度条控件在父坐标中的最顶侧像素;
-
xSize: 进度条的水平尺寸,以像素为单位;
-
ySize: 进度条的垂直尺寸,以像素为单位;
-
hParent: 父窗口句柄。如果为0,则将桌面窗口作为其父窗口;
-
WinFlags: 窗口创建标志。由于控件本质上是窗口,所以曲线图控件在创建时可以使用几乎所有的窗口创建标志。 这些标志中按钮最常用的是WM_CF_SHOW。全部创建标志请参考emWin手册的窗口管理器章节;
-
ExFlags: 额外创建标志,用于设置进度条方向,可选值见;
-
Id: 控件Id号。
返回值:返回值:创建成功后返回已创建的进度条控件句柄,创建失败则返回0。
28.1.2.2. PROGBAR_CreateIndirect()
从对话框资源表中创建进度条控件。
代码清单:进度条-2 函数原型
PROGBAR_Handle PROGBAR_CreateIndirect(const GUI_WIDGET_CREATE_INFO
*pCreateInfo, WM_HWIN hWinParent,
int x0, int y0, WM_CALLBACK *cb);
-
pCreateInfo: 指向GUI_WIDGET_CREATE_INFO结构的指针;
-
hParent: 父窗口的句柄