MFC窗口中如何拦截在特定输入框中的按键消息? 我想要知道什么时候用户在IDC_COMBO_COMMAND输入框中按下了Delete键或者Backspace键。怎样实现?越简洁越好。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在按键的消息函数中用CWnd::GetCapture捕捉鼠标在哪个窗口然后判断是否是你要这个键在这里起作用添加你相应的操作就是了 1。 子类化2。 监视窗口消息。PreTranslateMessage取得当前有焦点的ID是否是你的combobox,如果是,判断是否是回车键或者backspace键 还有,相应该combox的事件:EDITCHANGE如果相应回车,请将dialog的OnOk地CDialog::OnOk 去掉 BOOL CTest6Dlg::PreTranslateMessage(MSG* pMsg) { if( pMsg->message == WM_KEYDOWN ) { CEdit *pEdit = (CEdit*)m_combo1.GetWindow(GW_CHILD); if(pMsg->hwnd == pEdit->m_hWnd ) { switch( pMsg->wParam ) { case 0x08://backspace ..... case VK_DELETE: ... } } } return CDialog::PreTranslateMessage(pMsg);} 求Color2Gray程序代码 在用MFC写了个DLL供PB调用,发现PB下有问题,在VC环境下成功 mdc中实现把文件拖到对话框中 怎么程序设置鼠标的属性?像控制面板里的一些属性 WINDOWS.H already included. MFC apps must not #include <windows.h> 是什么原因??? API函数编写串口问题 高分求救Web Browser控件问题!!! 在SDK是的错误,请高手指点。 如何检测图片中的一线线 怎么进行调试 求毕业设计 欢迎加入vc图形图像处理群23010718
用CWnd::GetCapture捕捉鼠标在哪个窗口
然后判断是否是你要这个键在这里起作用
添加你相应的操作就是了
2。 监视窗口消息。
PreTranslateMessage
取得当前有焦点的ID是否是你的combobox,如果是,判断是否是回车键或者backspace键
EDITCHANGE
如果相应回车,请将dialog的OnOk地CDialog::OnOk 去掉
{
if( pMsg->message == WM_KEYDOWN )
{
CEdit *pEdit = (CEdit*)m_combo1.GetWindow(GW_CHILD);
if(pMsg->hwnd == pEdit->m_hWnd )
{
switch( pMsg->wParam )
{
case 0x08://backspace
.....
case VK_DELETE:
...
}
}
}
return CDialog::PreTranslateMessage(pMsg);}