共用方式為


以手動方式加入控制項

您可以 將控制項加入對話方塊編輯器的對話方塊。 或將它們,有程式碼的。

若要建立控制項物件,您可以在 C ++. 對話方塊或框架視窗物件通常會內嵌 C++ 主控物件。 與這個框架的許多其他物件,則控制項需要兩階段建構。 為建立父對話方塊或框架視窗的一部分,您應該呼叫控制項的 Create 成員函式。 對於對話方塊,這通常是在 OnInitDialog和為框架視窗,以 OnCreate為單位。

下列範例顯示要宣告在衍生的對話方塊類別的類別宣告的 CEdit 物件會呼叫 OnInitDialogCreate 的成員函式。 由於 CEdit 物件宣告為內嵌物件,它會自動建構,該對話方塊建構物件時,不過,仍然必須將它初始化其 Create 成員函式。

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

下列 OnInitDialog 函式會設定矩形,然後呼叫 Create 建立 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)