关于CEdit的KeyDown事件 请问如何捕捉CEDIT的KEYDOWN事件,好象没有相应的WM_KEYDOWN消息,是不是要通过CMAINFRAME的WM_KEYDOWN来捕捉,然后再判断鼠标焦点? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以自己重CEdit继承一个类,重载KeyDown 也可以重载对话框的PreTranslateMessage消息 BOOL CDialogBarAttrib::PreTranslateMessage(MSG* pMsg) { if( pMsg->message == WM_KEYDOWN ) { /// } return CDialogBar::PreTranslateMessage(pMsg);} 重载PreTranslateMessag,能过捕获OnKeyDown消息来处理。 BOOL CTest6Dlg::PreTranslateMessage(MSG* pMsg) { if( pMsg->message == WM_KEYDOWN ) { if(pMsg->hwnd == GetDlgItem(IDC_EDIT1)->m_hWnd) { switch( pMsg->wParam ) { case VK_SPACE: AfxMessageBox("输入了空格!"); } } return TRUE; } return CDialog::PreTranslateMessage(pMsg);} 用代码实现sqlserver数据库的发布和订阅的程序 不用再到sqlserver里面去设置了 可以吗? 请高手指教 请教一个dll调用问题 透明对话框 如何获取“桌面”的路径 如何快速判断一个连接是否已被关闭? 如何把共享别的工程的窗体资源(将一个工程的窗体加到别的工程中,省去设计工夫?? 我刚开始学c语言,请高手帮我解困惑!~(真诚) vc 模拟器开启后再初始化? 比对多浏览器的屏幕截图 编程语言汇集大全---请加入 com的制作? 如何用刷子,笔等在内存dc中作完图后,显示出来?
{
if( pMsg->message == WM_KEYDOWN )
{
///
}
return CDialogBar::PreTranslateMessage(pMsg);
}
{
if( pMsg->message == WM_KEYDOWN )
{
if(pMsg->hwnd == GetDlgItem(IDC_EDIT1)->m_hWnd)
{
switch( pMsg->wParam )
{
case VK_SPACE:
AfxMessageBox("输入了空格!");
}
}
return TRUE;
} return CDialog::PreTranslateMessage(pMsg);
}