手动添加控件

可以 将控件添加到对话框编辑器中的对话框。 或添加自己,它们用代码。

若要创建控件对象,通常将会嵌入在 .c. C++ 对话框或框架窗口对象的 C++ 控件对象。 与框架中的许多其他对象,则控件需要构造两个阶段。 在创建父对话框或框架窗口的一部分,则应调用控件的 创建 成员函数。 对于对话框,这通常可以在 OnInitDialog以及框架窗口,在 OnCreate

下面的示例演示声明在派生的对话框类的类声明的一个 CEdit 对象并调用 OnInitDialog创建 成员函数。 由于其中声明 CEdit 对象作为嵌入对象,它自动构造,当构造对话框对象时,但仍必须初始化它与自己的 创建 成员函数。

class CCustomDialog : public CDialog
{
   CEdit m_edit;
   virtual BOOL OnInitDialog();
};

以下 OnInitDialog 函数用于设置矩形,然后调用 创建 创建 Windows 编辑控件并将其附加到未初始化的 CEdit 对象。

BOOL CCustomDialog::OnInitDialog()
{
    CDialog::OnInitDialog();
    CRect rect(85, 110, 180, 210);

    m_edit.Create(WS_CHILD | WS_VISIBLE | WS_TABSTOP |
             ES_AUTOHSCROLL | WS_BORDER, rect, this, IDC_EXTRA_EDIT);
    m_edit.SetFocus();
    return FALSE;
}

在创建对象之后编辑,还可以设置项指向控件通过调用 SetFocus 成员函数。 最后,将返回 0。OnInitDialog 表示形式,因此设置焦点。 如果返回非零值,则对话框管理器设置焦点设置在对话框项列表中的第一个控件的项。 在许多情况下,您需要将控件添加带有对话框编辑器中的对话框。

请参见

参考

创建和使用控件

CDialog::OnInitDialog

概念

控件 (MFC)