EmWin 接触---基础函数

创建对话框,需求两个基本要素:资源表和对话框过程。对话框可以基于阻塞(使用 GUI_ExecDialogBox())或非阻塞(使用 GUI_CreateDialogBox()
方式创建。以下为例: 

GUI_CreateDialogBox(_aDialogCreate, GUI_COUNTOF(_aDialogCreate), _cbDialog, WM_HBKWIN, 0, 0)

_aDialogCreate为资源表:

static const GUI_WIDGET_CREATE_INFO _aDialogCreate[] = {
{ FRAMEWIN_CreateIndirect, "Framewin", ID_FRAMEWIN_0, 0, 0, 800, 480, FRAMEWIN_CF_MOVEABLE, 0x64, 0 }

};

#define GUI_COUNTOF(a)          (sizeof(a) / sizeof(a[0]));

_aDialogCreate为对话框过程函数:

static void _cbDialog(WM_MESSAGE * pMsg) 

{

WM_HWIN hItem;

switch (pMsg->MsgId)

 

}

当pMsg->Msgld为 WM_INIT_DIALOG时,初始化窗口信息,给创建的窗口设置一个初值。

当pMsg->Msgld为WM_NOTIFY_PARENT时,窗口操作值。

具体函数分析:

WM_HWIN GUI_CreateDialogBox(const GUI_WIDGET_CREATE_INFO * paWidget,
                      int NumWidgets,
                      WM_CALLBACK * cb,
                      WM_HWIN hParent,
                      int x0,
                      int y0);

paWideget  ---- 定义对话框中所要包含的小工具的资源表的指针

NumWidgets ---对话框中所包含的小工具的总数

cb --- 应用程序特定回调函数(对话框过程函数)的指针

hParent --- 父窗口的句柄(0表示没有父窗口)

x0 --- 对话框相对于父窗口的X轴位置

y0 --- 对话框相对于父窗口的Y轴位置

void GUI_EndDialog(WM_HWIN hDialog, int r);

hDialog --- 对话框的句柄

r --- 由 GUI_ExecDialogBox 返回的值

GUI_SetColor(GUI_BLUE);//设置桌面窗口的背景色是白色

转载于:https://www.cnblogs.com/HumbleFish/p/8994218.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值