在 MFC(Microsoft Foundation Classes)中,CDialog::GotoDlgCtrl 是一个公共方法,用于将输入焦点移动到对话框中的指定控件。

以下是 CDialog::GotoDlgCtrl 的声明:
void GotoDlgCtrl(CWnd* pWndCtrl);

该方法接受一个指向窗口控件(CWnd 类型)的指针作为参数,并将输入焦点移动到指定的控件上。这通常在对话框初始化过程中或在特定用户操作后需要设置焦点时使用。

以下是一个简单的示例,演示如何使用 GotoDlgCtrl 方法:
// 在对话框初始化过程中使用 GotoDlgCtrl 方法
BOOL CMyDialog::OnInitDialog()
{
    CDialog::OnInitDialog();

    // 将输入焦点设置到某个控件上
    CWnd* pWndCtrl = GetDlgItem(IDC_EDIT_NAME);
    if (pWndCtrl != nullptr)
    {
        GotoDlgCtrl(pWndCtrl);
    }

    return TRUE;  // 返回 TRUE 以便设置焦点到默认控件
}

在这个示例中,OnInitDialog 是对话框初始化的默认处理函数。在该函数中,GotoDlgCtrl 被用于将输入焦点移动到对话框中具有 ID 为 IDC_EDIT_NAME 的编辑框控件上。这样,用户打开对话框时焦点就会在编辑框上,方便用户直接进行输入。

需要注意的是,GotoDlgCtrl 方法通常在对话框已经创建并显示后才能调用。


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