几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量

几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 (http://www.dimcax.com/hust/index.php)
-   vc编程 (http://www.dimcax.com/hust/forumdisplay.php?f=76)
-   -   【转帖】谁能详细地讲解PreTranslateMessage以及MSG的用途及用法 (http://www.dimcax.com/hust/showthread.php?t=1524)

huangyhg 2007-11-12 03:10 PM

【转帖】谁能详细地讲解PreTranslateMessage以及MSG的用途及用法
 
哪位老哥,能详细地讲解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::PreTranslateMessage(……); //调用基类的该函数,
否则你可以直接return TRUE; 或 return FALSE;
TRUE和FALSE有什么区别呢?如果用true,则消息会被传到父窗口(如果存在),用false则不会。
Top

3 楼Hopping(♂风中尘埃♂)回复于 2001-03-26 13:42:00 得分 0

能不能举个例子呢!如对话框上有一个ComboBox控件,我想在ComboBox中按下回车键后,自己进行处理,应如何做呢

huangyhg 2008-05-09 11:13 AM

回复: 【转帖】谁能详细地讲解PreTranslateMessage以及MSG的用途及用法
 
ComboBox我用select()选择一项时,怎么去掉它的高亮显示?
1) lost focus of combobox
combo.add("hello world1");
combo.add("hello world2");
combo.add("hello world3");
combo.select(1);
shell.setFocus();
2) setText
setText

ComboBox选择一项?
SelectString(1, "123 ");//找“123”找到选中,找不到选1
SetCurSel (4);//选中第四个


所有的时间均为北京时间。 现在的时间是 11:06 AM.