首页 > 技术服务> emWin学习课堂emWin学习课堂

技术支持与下载

我们为您提供最优质的售前售后服务,有任何问题及建议都可以联系我们。

免费技术服务热线:

市场业务咨询电话:

周一至周五(8:30-12:00、13:00-17:30)

联系我们

广州市番禺区南华路62号华景新城华倚园1梯301

全国销售网络

emWin 2天速成实例教程011_Multipage多页控件使用方法

日期:2016-12-01 18:51:17  来源:

备注:(1)打开工程目录下的"Exe\GUISimulationDebug.exe"即可看到效果。(2)看完教程000~005就基本会用emWin做项目,其他章节可以需要时再参考。

  在界面应用中Multipage控件是一个非常使用的控件,emWin的Multipage控件已经做的非常完善,值得注意的是要理解好Multipage控件的Window窗口概念,下面是emWin说明书关于Multpage的Window窗口描述:

MULTIPAGE控件实际上包含2个窗口:主窗口和子窗口,子窗口称为Client窗口,在处理回调函数时理解主窗口和Client窗口的概念是很重要的:两个窗口可以对应两个不同的回调函数;当创建Page时,这个Page是作为Client窗口的子窗口包含在Client窗口中的,因此Page的父窗口是Client窗口而非主窗口。而每个Page实际就是一个Window窗口(比如:Window+Button0+Button1+Edit0+Edit1…),反正每个Page都必须包含一个Window控件。


(1)使用GUIBuilder V5.30创建如下页面并保存为C文件FramewinDLG.c,然后添加到脱机模拟仿真平台CodeBlocks的emwin工程:


(2)WM_INIT_DIALOG消息下修改MULTIPAGE初始化程序:

hItem = WM_GetDialogItem(pMsg->hWin, ID_MULTIPAGE_0);

MULTIPAGE_SetTabHeight(hItem, 20); //not supported for v5.24

MULTIPAGE_SetTabWidth(hItem, 60, 0); //not supported for v5.24

MULTIPAGE_SetTabWidth(hItem, 60, 1); //not supported for v5.24

MULTIPAGE_SetTabWidth(hItem, 60, 2); //not supported for v5.24

MULTIPAGE_SetFont(hItem, GUI_FONT_16_1);


(3)创建PAGE0,使用GUIBuilder V5.30创建如下页面并保存为C文件WindowDLG.c,然后添加到脱机模拟仿真平台CodeBlocks的emwin工程,用同样的方法创建PAGE1和PAGE2页面:


(4)WM_INIT_DIALOG消息下修改MULTIPAGE初始化程序,将上面创建的Window页面附贴到MULTIPAGE

hItem = WM_GetDialogItem(pMsg->hWin, ID_MULTIPAGE_0);

MULTIPAGE_AttachWindow(hItem, 0, CreateWindow0());//创建Window页面并附贴到PAGE0

MULTIPAGE_AttachWindow(hItem, 1, CreateWindow1());//创建Window页面并附贴到PAGE1

MULTIPAGE_AttachWindow(hItem, 2, CreateWindow2());//创建Window页面并附贴到PAGE2


(5)添加控制交互程序:


本地下载 网盘下载
版权所有©2005-2016 广州尼奇光电科技有限公司 | 粤ICP备17079366号-1

更多...