温馨提示×

如何在Mfc中取消按钮的焦点

MFC
小云
206
2023-09-26 07:24:23
栏目: 编程语言

要取消按钮的焦点,可以使用CButton类的函数SetFocus()将焦点设置到其它控件上。具体步骤如下:

  1. 打开对话框类的头文件(通常是XXXDlg.h);

  2. 在对话框类的声明中添加成员变量,表示按钮控件的指针,例如:CButton m_btnCancel;

  3. 在OnInitDialog()函数中添加代码,获取按钮控件的指针,例如:m_btnCancel.SubclassDlgItem(IDCANCEL, this);

  4. 在OnInitDialog()函数的末尾,添加代码将焦点设置到其它控件上,例如:GetDlgItem(IDC_OTHER_CONTROL)->SetFocus()。

完整示例代码如下:

// XXXDlg.h文件
class CXXXDlg : public CDialogEx
{
// ...
CButton m_btnCancel; // 按钮控件的指针
// ...
};
// XXXDlg.cpp文件
BOOL CXXXDlg::OnInitDialog()
{
CDialogEx::OnInitDialog();
// 获取按钮控件的指针
m_btnCancel.SubclassDlgItem(IDCANCEL, this);
// 将焦点设置到其它控件上
GetDlgItem(IDC_OTHER_CONTROL)->SetFocus();
return TRUE;
}

上述代码中,IDCANCEL是取消按钮的ID,IDC_OTHER_CONTROL是其它控件的ID。根据实际情况修改这些ID即可。

0