描述:
在ActiveX控件中创建一CEdit控件,为什么该编辑框只能输入数字键及字母键,退格键及光标键都不能输入。有谁碰到过类似问题,请多指教!
解决方案1:
you should dispatch message in ATL.
Override PreTranslateMessage() in the COleControl-derived class as follows:
BOOL CEditOCXCtrl::PreTranslateMessage(MSG* pMsg)
{
if (pMsg->message >= WM_KEYFIRST && pMsg->message <= WM_KEYLAST)
{
// Allow tabbing between child controls.
if (VK_TAB == pMsg->wParam)
{
if (IsDialogMessage(pMsg))
return TRUE;
}
}
return COleControl::PreTranslateMessage(pMsg);
}
PRB: TranslateAccelerator() Not Called for ActiveX Controls
Q183167