在 MFC(Microsoft Foundation Classes)中,CDialog::SetDefID 是一个公共方法,用于设置对话框的默认按钮。默认按钮是用户按下 "Enter" 键时触发的按钮。

以下是 CDialog::SetDefID 的声明:
void SetDefID(UINT nID);

该方法接受一个 UINT 类型的参数,表示对话框中的按钮的标识符(ID)。通常,IDOK 表示确定按钮,而 IDCANCEL 表示取消按钮。你可以使用其他自定义按钮的标识符。

以下是一个示例,演示如何在对话框初始化时使用 SetDefID 设置默认按钮:
// 在对话框初始化过程中使用 SetDefID 方法
BOOL CMyDialog::OnInitDialog()
{
    CDialog::OnInitDialog();

    // 设置确定按钮 (IDOK) 为默认按钮
    SetDefID(IDOK);

    return TRUE;
}

在这个示例中,CMyDialog 是派生自 CDialog 的对话框类。通过在 OnInitDialog 方法中调用 SetDefID,可以将确定按钮(IDOK)设置为对话框的默认按钮。这样,在用户按下 "Enter" 键时,系统将模拟用户点击确定按钮的效果。

需要注意的是,设置默认按钮的操作通常在对话框初始化时执行。如果你需要在运行时更改默认按钮,可以调用 SetDefID 方法,将新的按钮标识符传递给它。


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