CPropertySheet::Create
モードレス プロパティ シートを表示します。
virtual BOOL Create(
CWnd* pParentWnd = NULL,
DWORD dwStyle = (DWORD)–1,
DWORD dwExStyle = 0
);
パラメーター
pParentWnd
親ウィンドウへのポインター。nullの親がデスクトップの場合は。dwStyle
プロパティ シートのウィンドウ スタイル。使用できるスタイルの一覧については、[ウィンドウ スタイル]を参照してください。dwExStyle
プロパティ シートの拡張ウィンドウ スタイル。使用できるスタイルの一覧については、拡張ウィンドウ スタイルを参照してください。
戻り値
プロパティ シートが正常に作成された場合、; それ以外の場合は 0。
解説
[作成] の呼び出しは、コンストラクター内に含めることも、コンストラクターが呼び出された後、を呼び出すことができます。
渡すことによって表される既定のスタイル dwStyleとして– 1 つが、実際に WS_SYSMENU。|WS_POPUP|WS_CAPTION|DS_MODALFRAME|DS_CONTEXTHELP| WS_VISIBLE。dwExStyleとして 0 を渡すことによって表される既定の拡張ウィンドウ スタイルは実際に WS_EX_DLGMODALFRAMEです。
[作成] のメンバー関数はプロパティ シートを作成すると、すぐに返されます。プロパティ シートを破棄するには、CWnd::DestroyWindowを呼び出します。
モーダル プロパティ シートがのように [作成] の呼び出しに表示されるモードレス プロパティ シートの[OK]、[キャンセル]はありませんが、およびヘルプ ボタンに適用しないようにします。目的のボタンは、ユーザーによって作成する必要があります。
モーダルのプロパティ シートを表示するには、DoModal を代わりに呼び出します。
使用例
// This code fragment shows how to create a modeless property sheet
// dialog in a command message handler (OnModelessPropertySheet())
// of a CView-derived class.
void CPSheetView::OnModelessPropertySheet()
{
// Declare a CPropertySheet object. m_pdlgPropertySheet is a data
// member of type CPropertySheet in CView-derived class.
m_pdlgPropertySheet = new CPropertySheet(_T("Simple PropertySheet"));
ASSERT(m_pdlgPropertySheet);
// Add three pages to the CPropertySheet object. Both m_pstylePage,
// m_pcolorPage, and m_pshapePage are data members of type
// CPropertyPage-derived classes in CView-derived class.
m_pstylePage = new CStylePage;
m_pcolorPage = new CColorPage;
m_pshapePage = new CShapePage;
m_pdlgPropertySheet->AddPage(m_pstylePage);
m_pdlgPropertySheet->AddPage(m_pcolorPage);
m_pdlgPropertySheet->AddPage(m_pshapePage);
// Create a modeless CPropertySheet dialog.
m_pdlgPropertySheet->Create();
}
// The code fragment below shows how to destroy the C++ objects for
// propertysheet and propertypage in the destructor of CView-derived
// class.
// NOTE: DestroyWindow() is called in CPropertySheet::OnClose() so
// you do not need to call it here. Property pages are children
// of the CPropertySheet, they will be destroyed by their parents.
CPSheetView::~CPSheetView()
{
delete m_pshapePage;
delete m_pstylePage;
delete m_pcolorPage;
delete m_pdlgPropertySheet;
}
必要条件
ヘッダー : afxdlgs.h