共用方式為


CWnd::CreateEx

建立指定的視窗並將其附加至 CWnd 物件。

virtual BOOL CreateEx(
   DWORD dwExStyle,
   LPCTSTR lpszClassName,
   LPCTSTR lpszWindowName,
   DWORD dwStyle,
   int x,
   int y,
   int nWidth,
   int nHeight,
   HWND hWndParent,
   HMENU nIDorHMenu,
   LPVOID lpParam = NULL 
);
virtual BOOL CreateEx(
   DWORD dwExStyle,
   LPCTSTR lpszClassName,
   LPCTSTR lpszWindowName,
   DWORD dwStyle,
   const RECT& rect,
   CWnd* pParentWnd,
   UINT nID,
   LPVOID lpParam = NULL
);

參數

  • dwExStyle
    位元的 OR 運算組合 (或) 的 延伸視窗樣式。;否則預設值延伸視窗樣式的 NULL 。

  • lpszClassName
    要包含已註冊之系統的視窗類別名稱的 NULL 結尾字串的指標,或預先定義的系統視窗類別的名稱。

  • lpszWindowName
    out 包含視窗顯示名稱的 NULL 結尾字串的指標,否則沒有視窗顯示名稱的 NULL 。

  • dwStyle
    位元的 OR 運算組合 (或) 的 視窗樣式;否則預設視窗樣式的 NULL 。

  • x
    視窗的初始水平距離從螢幕或父視窗的左側。

  • y
    視窗的初始垂直距離從螢幕或父視窗頂端。

  • nWidth
    的寬度,以像素為單位, 視窗。

  • nHeight
    的高度,以像素為單位), 視窗。

  • hwndParent
    對於子視窗,控制代碼父視窗,否則,主控視窗的控制代碼,如果視窗的擁有人。

  • nIDorHMenu
    對於子視窗,則視窗 ID,否則,一個功能表的 ID 視窗的。

  • lpParam
    傳遞至 CWnd::OnCreate 方法在 lpCreateParams 欄位的使用者資料指標。

  • rect
    視窗的大小和位置 (相對於螢幕或父視窗的。

  • pParentWnd
    對於子視窗,指標到父視窗,否則,指標至主控視窗,則視窗的擁有人。

  • nID
    對於子視窗,則視窗 ID,否則,一個功能表的 ID 視窗的。

傳回值

TRUE ,如果方法成功,否則 FALSE。

備註

警告

CWnd::PreCreateWindow 現在轉散發的 CREATESTRUCT 參數的 hMenu 成員至 this 指標,則為 NULL ,而這個模式包含 WS_CHILD。針對適當的功能,請確定您的對話方塊控制項不是 NULL的 ID。

這項變更會停駐在 Managed 或原生的損毀 Interop 案例中。在 CWnd::CreateTRACE 陳述式警告問題的開發人員。

預設擴充的視窗樣式是 WS_EX_LEFT。 預設視窗樣式是 WS_OVERLAPPED

使用 AfxRegisterWndClass 函式註冊視窗類別。 使用者定義的視窗類別可在其註冊的模組。

子視窗的維度是相對於父視窗的工作區的左上角。 最上層視窗的維度是相對於螢幕的左上角。

CWnd::OnCreate 方法呼叫,以 CreateEx 方法傳回之前,然後在視窗中,最後變成可見的。

範例

void CMyDlg::OnCreateExtendedControl() 
{
   // m_pWndStaticEx is a CWnd* member of CMyDlg
   m_pWndStaticEx = new CStatic;
   m_pWndStaticEx->CreateEx(WS_EX_CLIENTEDGE, // Make a client edge label.
      _T("STATIC"), _T("Hi"),
      WS_CHILD | WS_TABSTOP | WS_VISIBLE,
      5, 5, 30, 30, m_hWnd, (HMENU)2345);
}

需求

標題: afxwin.h

請參閱

參考

CWnd 類別

階層架構圖

CWnd::Create

CreateWindowEx