我的意思(测试): 单击(OnSetState)一个按钮来设置别一按钮(IDC_MYBUTTON_CREATE)的焦点状态.
void CMyButton::OnSetState()
{
CButton *p_btnCreate = (CButton *)GetDlgItem(IDC_MYBUTTON_CREATE);
//先判断按钮是否为焦点状态(nonzero 表示焦点状态,zero 表示非焦点状态),然后设置之。
if ( !((p_btnCreate->GetState()) & 0x0008) )
{
MessageBox("无焦点");
p_btnCreate->SetFocus();
}
else
{
MessageBox("有焦点");
GetDlgItem(IDC_BUTTON1)->SetFocus();
}
}
以上的程序为什么无论另一按钮有无焦点都显示“无焦点”然后设置之。
单击OnSetState后焦点已经在当前按钮上了
单击时候,焦点移到单击按钮,IDC_MYBUTTON_CREATE 肯定没有焦点了
单击OnSetState后焦点已经在当前按钮上了