|
哪位老哥,能详细地讲解PreTranslateMessage以及MSG的用途及用法!
小弟菜鸟一只,请指教!!:)
1 楼joke100(咱们去SLEEP吧...)回复于 2001-03-26 10:50:00 得分 10
PreTranslateMessage在TranslateMessage和DispatchMessage之前对消息的一次处理.一般想截获消息从这里就可以截住.如果这里不做处理,那么消息就会在TranslateMessage后分发给目标窗口去处理...
MSG是一个结构,表明了消息的具体信息.
typedef struct tagMSG { // msg
HWND hwnd;
UINT message;
WPARAM wParam;
LPARAM lParam;
DWORD time;
POINT pt;
} MSG;
其中
WPARAM wParam;
LPARAM lParam;
两个成员对于不同的消息码有不同的含义...这有赖于消息的种类.
2 楼happylaodu(青菜豆腐)回复于 2001-03-26 11:34:00 得分 10
作两点补充:
如果你截获某个消息后,对它进行一定处理后,还要让它继续传下去,则可以
return CBaseClass:reTranslateMessage(……); //调用基类的该函数,
否则你可以直接return TRUE; 或 return FALSE;
TRUE和FALSE有什么区别呢?如果用true,则消息会被传到父窗口(如果存在),用false则不会。
Top
3 楼Hopping(♂风中尘埃♂)回复于 2001-03-26 13:42:00 得分 0
能不能举个例子呢!如对话框上有一个ComboBox控件,我想在ComboBox中按下回车键后,自己进行处理,应如何做呢 |
|