窗口子类化为何意? 根据我理解,就是把一个窗口以一个窗口类进行处理,包括(消息、消息响应方法等),而这个窗口类一般来说是你生成的一个CWnd派生类。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 子类化相当于你可以对传递给窗口的消息进行预处理后,再由原窗口函数处理,如一个子类化的CEdit只接收数字输入. 简单地说就是拦截 WindProc 重新改写消息处理函数以处理特定的消息,对非特定消息继续调用原来的处理过程。 就是用自己的函数对消息进行处理.举个例子.要按钮按下时不发送BN_CLICKED消息.LRESULT CALLBACK BtnWndProc(HWND ,UINT ,WPARAM ,LPARAM) ;WNDPROC WndProc=(WNDPROC)SetWindowLong(hButton,GWL_WNDPROC,(LONG)BtnWndProc);LRESULT CALLBACK BtnWndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam){ switch(msg) { case WM_LBUTTONDOWN:// own function break; default: return CallWindowProc(WndProc,hWnd,msg,wParam,lParam); }return 0;} 通常,MFC控件类有其自己的缺省消息处理函数。但如果由MFC控件类有特殊要求,并保留原有类的大部分功能,则没有必要自己生成一新类。只需派生一新类,在其过程处理函数或消息处理函数中加入自己的代码,子类化后,个人代码将先年一步截流此消息,从而达到自己的特殊要求。 继续问一次,全局钩子回调函数是谁执行的 研究过IRC协议的请进。。。 呵呵,麻烦大家帮忙看看这台机器能卖多少钱 MFC对数据库进行操作的问题 [BlueDog] 请问如何读取系统是否装有Modem,Modem装在什么口(Com1,Com2,Com3)? 不规则图形排样源码 关于SendMessage()的参数调用问题,急!!! 在VC中使用公用对话框!颜色对话框!· 100分在线解决一个关于ACTIVEX控件问题 我精通VC可没有证书,应聘时我该怎么说? 何谓“子类化”SubDlgItem? 开发VxD的工具VToolsD在哪儿可下载到,谢谢.
LRESULT CALLBACK BtnWndProc(HWND ,UINT ,WPARAM ,LPARAM) ;
WNDPROC WndProc=(WNDPROC)SetWindowLong(hButton,GWL_WNDPROC,(LONG)BtnWndProc);
LRESULT CALLBACK BtnWndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
{
switch(msg)
{
case WM_LBUTTONDOWN:
// own function
break;
default:
return CallWindowProc(WndProc,hWnd,msg,wParam,lParam);
}
return 0;
}