在 MFC(Microsoft Foundation Classes)中,CDialog::GetDefID 是一个公共方法,用于获取对话框的默认按钮的标识符(ID)。默认按钮是用户按下 "Enter" 键时触发的按钮。

以下是 CDialog::GetDefID 的声明:
UINT GetDefID() const;

该方法返回一个 UINT,代表对话框的默认按钮的标识符。如果没有默认按钮,或者默认按钮的标识符无效,则返回 0。

以下是一个示例,演示如何使用 GetDefID 方法:
// 在某个成员函数中使用 GetDefID 方法
void CMyDialogAppDlg::OnButtonCheckDefaultButton()
{
    CMyDialog dlg;

    // 获取对话框的默认按钮的标识符
    UINT nDefID = dlg.GetDefID();

    if (nDefID != 0)
    {
        // 对话框有默认按钮
        TRACE(_T("Default button ID: %d\n"), nDefID);
    }
    else
    {
        // 对话框没有默认按钮
        TRACE(_T("No default button.\n"));
    }
}

在这个示例中,CMyDialog 是派生自 CDialog 的对话框类。通过调用 GetDefID 方法,可以获取对话框的默认按钮的标识符。你可以在需要的时候检查默认按钮的标识符,并根据情况执行相应的逻辑。

需要注意的是,GetDefID 方法通常在对话框已经创建并显示后才能调用,因为在创建对话框之前,系统并不知道哪个按钮会被指定为默认按钮。


转载请注明出处:http://www.pingtaimeng.com/article/detail/17332/MFC/CDialog