CContainedWindowT::Create
RegisterWndSuperclass を呼び出して、既存のクラスに基づくウィンドウ クラスを登録します。ただし、ウィンドウ プロシージャは既存のクラスのものではなく、CContainedWindowT::WindowProc に変更されます。
HWND Create(
HWND hWndParent,
_U_RECT rect,
LPCTSTR szWindowName = NULL,
DWORD dwStyle = 0,
DWORD dwExStyle = 0,
_U_MENUorID MenuOrID = 0U,
LPVOID lpCreateParam = NULL
);
HWND Create(
CMessageMap* pObject,
DWORD dwMsgMapID,
HWND hWndParent,
_U_RECT rect,
LPCTSTR szWindowName = NULL,
DWORD dwStyle = 0,
DWORD dwExStyle = 0,
_U_MENUorID MenuOrID = 0U,
LPVOID lpCreateParam = NULL
);
HWND Create(
LPCTSTR lpszClassName,
CMessageMap* pObject,
DWORD dwMsgMapID,
HWND hWndParent,
_U_RECT rect,
LPCTSTR szWindowName = NULL,
DWORD dwStyle = 0,
DWORD dwExStyle = 0,
_U_MENUorID MenuOrID = 0U,
LPVOID lpCreateParam = NULL
);
パラメーター
lpszClassName
[入力] コンテナー内のウィンドウの基となる既存のウィンドウ クラスの名前。pObject
[入力] メッセージ マップを宣言するコンテナー オブジェクトへのポインター。 このオブジェクトのクラスは、CMessageMap から派生したものである必要があります。dwMsgMapID
[入力] コンテナー内のウィンドウのメッセージを処理するメッセージ マップを識別する値。 既定値は 0 で、BEGIN_MSG_MAP で宣言された既定のメッセージ マップを指定します。 ALT_MSG_MAP(msgMapID) で宣言された代替メッセージ マップを使うには、msgMapID を渡します。hWndParent
[入力] 親ウィンドウまたはオーナー ウィンドウを識別するハンドル。rect
[入力] ウィンドウの位置を指定する RECT 構造体。 RECT は、ポインターまたは参照によって渡されます。szWindowName
[入力] ウィンドウの名前。 既定値は NULL です。dwStyle
[入力] ウィンドウのスタイル。 既定値は、WS_CHILD |WS_VISIBLE です。 有効な値の一覧については、Windows SDK の「CreateWindow」を参照してください。dwExStyle
[入力] 拡張ウィンドウ スタイル。 既定値は 0 で、拡張スタイルは使いません。 有効な値の一覧については、Windows SDK の「CreateWindowEx」を参照してください。MenuOrID
[入力] 子ウィンドウの場合はウィンドウ識別子。 トップレベル ウィンドウの場合はウィンドウのメニュー ハンドル。 既定値は 0U です。lpCreateParam
[入力] ウィンドウ作成データへのポインター。 詳細については、CreateWindowEx に渡す最後のパラメーターの説明を参照してください。
戻り値
処理が正常に終了した場合は、新規に作成したウィンドウを識別するハンドルを返します。それ以外の場合は、NULL を返します。
解説
既存のウィンドウ クラス名は、m_lpszClassName に保存されます。 次に、Create はこの新しいクラスに基づいてウィンドウを作成します。 新しく作成されたウィンドウは、CContainedWindowT オブジェクトに自動的にアタッチされます。
注意
既に SubclassWindow を呼び出している場合は、Create を呼び出さないでください。
注意
MenuOrID パラメーターの値として 0 を使用する場合は、コンパイラ エラーを避けるため、既定値である 0U を指定してください。
必要条件
**ヘッダー:**atlwin.h