VC++获取控件焦点和设置焦点

VC++获取控件焦点和设置焦点

HWND hwnd = ::GetFocus();//获取焦点控件
int iID = ::GetDlgCtrlID(hwnd);
if(iID == IDC_EDIT2)  //查看是否那个控件ID
   {
        do_something //相应处理
     }

设置控件焦点机制:SetFocu会向其他拥有焦点的空间发送 WM_KILLFOCUS消息,然后向你IDC_OK空间发送WM_SETFOCUS消息。
所以会先调用之前拥有焦点的WM_KILLFOCUS响应函数,即OnkillFocus函数,然后去响应自己的WM_SETFOCUS消息。

GetDlgItem(IDC_EDIT2)->SetFocus();  //设置控件焦点
((CButton*)GetDlgItem(IDC_BUTTON1))->SetWindowText("Start");  //代码获取控件,避免使用关联控件变量
 ((CProgressCtrl *)GetDlgItem(IDC_PROGRESS1))->SetRange(0,100);