当创建一个对话框时,窗口的默认行为将焦点设置在拥有Tab顺序第一个的控件上。对于某些特殊的应用,就不能采取这种标准设置,而是自己选择一个控件最初拥有焦点。
和大多数对话框初始化一样,这个问题的解决方案在对话框的OnInitDialog()函数内调用SetFocus()实现.不要忘记在OnInitDialog()函数最后返回false以防止Windows使用标准的焦点设置行为。
BOOL CDemoDlg::OnInitDialog()
{
CDialog::OnInitDialog();
//其它的初始化......
//Case1:如何有何控件关联的Control类型的成员变量
m_MyControlVariable.SetFocus();
//Case2:直接访问控件
GetDlgItem(IDC_MYCONTROL)->SetFocus();
return false;
}