在项目中需要用到扫描枪来提取扫描码,但扫描枪提取扫描码时的步骤是:1对文本框进行赋值。2一个回车事件。(这没法改变)
如果文本框中有内容,此时必须手工干预(把文本清除),这样的行为极其烦锁。
下面提出改进的方法
即每次赋完值后直接选中整个文本,以便下次输入覆盖之前文本
BOOL CSelectAllTextDlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: 在此添加专用代码和/或调用基类
if(pMsg->message==WM_KEYDOWN)
if (pMsg->wParam==VK_RETURN)
{
m_Edit.SetSel(0,-1);
return TRUE;
}
return CDialog::PreTranslateMessage(pMsg);
}
如上为部分代码,仅供参考
项目来源(LabMan)