对话框上有五个CEdit和两个Button控件
//重写PreTranslateMessage函数
BOOL CAddDlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: 在此添加专用代码和/或调用基类
if (pMsg->message == WM_KEYDOWN && pMsg->wParam == VK_RETURN)
{
CWnd pwnd = GetFocus();
if (pwnd != NULL)
{
//判断是否是按钮控件
if (pwnd->GetDlgCtrlID() == IDOK)
{
OnBnClickedOk();
}
}
//获得下一个Tab顺序的控件指针
CWnd pmwnd = GetNextDlgTabItem(pwnd);
if (pmwnd)
{
pmwnd->SetFocus(); //设置下一个控件获得焦点
CEdit* pEdit; //定义CEdit控件指针
pEdit = (CEdit*)pmwnd; //把获得焦点的控件指针转成CEdit控件指针,就这转换都查了好多百度,结果就这么简单):
pEdit->SetSel(0, -1); //设置全选中
return TRUE;
}
}
return CDialogEx::PreTranslateMessage(pMsg);
}
原文地址:https://www.cnblogs.com/greenleaf1976/p/12283182.html
时间: 2024-10-01 13:38:25