【emwin】WM_SetCallback 创建回调函数
@2018-7-11
【小记】
emWin 通过函数 WM_SetCallback ( ) 自定义回调函数
> 下段代码就是通过 MESSAGEBOX 控件的 OK 按键实现删除信息框的对话框,即消息框的背景窗口 DIALOG 删除了,留下了 TEXT & BUTTON
1 hWin = MESSAGEBOX_Create("这是一个帮助!\n你觉得这个帮助功能如何?", "帮助", GUI_MESSAGEBOX_CF_MOVEABLE); 2 3 WM_SetCallback(hWin, _cbDialogMessage); 4 5 static void _cbDialogMessage(WM_MESSAGE *pMsg) 6 { 7 WM_HWIN hWin; 8 9 int NCode; 10 int Id; 11 12 hWin = pMsg->hWin; 13 14 switch (pMsg->MsgId) 15 { 16 case WM_NOTIFY_PARENT: 17 Id = WM_GetId(pMsg->hWinSrc); 18 NCode = pMsg->Data.v; 19 20 switch (Id) 21 { 22 case GUI_ID_OK: 23 switch (NCode) 24 { 25 case WM_NOTIFICATION_CLICKED: 26 break; 27 case WM_NOTIFICATION_RELEASED: 28 WM_DeleteWindow(hWin); 29 break; 30 } 31 break; 32 } 33 break; 34 35 default: 36 WM_DefaultProc(pMsg); 37 break; 38 } 39 }
再牛逼的梦想也架不住傻逼似的坚持