中级会员
- 积分
- 287
- 金钱
- 287
- 注册时间
- 2021-6-21
- 在线时间
- 104 小时
|
本帖最后由 skw168 于 2022-6-22 19:01 编辑
EMWIN中,A窗口给B窗口发送消息
1.
首先创建2个窗口
在头文件中定义消息ID #define WM_IC1 (WM_USER + 0)
2.
A窗口中,发送消息,
WM_HW[0]是目标窗口(B窗口)句柄,WM_IC1是自定义消息ID
- WM_SendMessageNoPara(WM_GetClientWindow(WM_HW[0]),WM_IC1);
复制代码
3.
B窗口中,在对话框回调函数中,增加一个自定义消息选项WM_IC1
- switch (pMsg->MsgId)
- {
- case WM_INIT_DIALOG:
- break;
- case WM_NOTIFY_PARENT:
- Id = WM_GetId(pMsg->hWinSrc);
- NCode = pMsg->Data.v;
- switch(Id)
- {
- }
- break;
- case WM_IC1:
- cnt++;
- sprintf(print_buff,"%d",cnt);
- hItem = WM_GetDialogItem(pMsg->hWin, ID_EDIT_1);
- EDIT_SetText(hItem, print_buff);
- break;
- default:
- WM_DefaultProc(pMsg);
- break;
- }
复制代码
备注:如果发送消息还想附带数据的方法
WM_MESSAGE message;
message.MsgId =WM_IC1;
message.v = 10086;
WM_SendMessage(WM_GetClientWindow(WM_HW[0]),&message); |
|