在界面上用回车键代替tab键切换焦点的办法

  1. 现在资源视图里面,把对话框上所有需要切换焦点的窗口或者按钮的tabstop属性设置为TRUE。
  2. 为窗口映射PreTranslateMessage消息处理函数
  3. 添加以下代码:
    if((pMsg->message == WM_KEYDOWN) && (VK_RETURN == (int) pMsg->wParam))
    {
    if(GetFocus()->GetDlgCtrlID() != IDCANCEL)
    {//如果切换的时候,有按钮是需要被执行的操作,放在这里判断,并且执行
    if (GetFocus()->GetDlgCtrlID() == IDC_BUTTON_XXXXX)
    {
    OnBnClickedButtonXXXX();
    }
    if(类似还需要处理的)
    {
    ………………………
    }
    pMsg->wParam = VK_TAB;
    }
    }
    return CDialogEx::PreTranslateMessage(pMsg);

同时,最好把回车按钮的属性里面 Default Button这一项设置为 True
现在就可以完全用 回车键来代替了,一切都是单手键盘操作,输入,回车,输入,回车

有关PreTranslateMessage,
请参考http://blog.csdn.net/ziyue007/article/details/7979337

你可能感兴趣的:(程序设计)