请教一下,为何这里的Dlg_OnTimer函数的格式和TimerProc函数格式不一样
void Dlg_OnTimer(HWND hwnd, UINT id) {...}
INT_PTR WINAPI Dlg_Proc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) {
switch (uMsg) {
chHANDLE_DLGMSG(hwnd, WM_INITDIALOG, Dlg_OnInitDialog);
chHANDLE_DLGMSG(hwnd, WM_COMMAND, Dlg_OnCommand);
chHANDLE_DLGMSG(hwnd, WM_TIMER, Dlg_OnTimer);
}
return(FALSE);
}
1、请教一下,为何这里的Dlg_OnTimer函数的格式和TimerProc函数格式不一样,当有wm_timer消息,也会正常调用该函数?
VOID CALLBACK TimerProc( HWND hwnd,
UINT uMsg,
UINT_PTR idEvent,
DWORD dwTime
);
2、HANDLE_##message((hwnd), (wParam), (lParam), (fn))
再请教一问,这种写表示什么意思?
有哪位大哥能指点一下吗?谢谢!
[解决办法]
HANDLE_DLGMSG定义在 <windowsx.h> 里.你可以自己看看.主要是方便烦人的switch里的CASE.
当有wm_timer消息,正常调用该函数!!