次の方法で共有


PropSheet_InsertPage マクロ (prsht.h)

既存のプロパティ シートに新しいページを挿入します。 ページは、指定したインデックスまたは指定したページの後に挿入できます。 このマクロを使用することも、PSM_INSERTPAGE メッセージを明示的に送信することもできます。

構文

BOOL PropSheet_InsertPage(
   HWND hDlg,
   HWND index,
   HWND hpage
);

パラメーター

hDlg

型: HWND

プロパティ シートへのハンドル。

index

型: HWND

ページを挿入する場所。 新しいページ 最初のページにするには、インデックスNULL に設定します。 新しいページを挿入する場所を指定するには、インデックスまたは既存のページの HPROPSHEETPAGE ハンドルを渡します。

価値 意味
インデックス
インデックス が MAXUSHORT (最大符号なし短整数) より小さい場合は、新しいページの 0 から始まるインデックスを指定します。 たとえば、挿入されたページをプロパティ シートの 3 番目のページにするには、インデックス を 2 に設定します。 最初のページにするには、インデックス 0 に設定します。 インデックス の値がページ数より大きく、MAXUSHORT より小さい場合、ページが追加されます。
hpageInsertAfter の
インデックス を既存のページの HPROPSHEETPAGE ハンドルに設定すると、その後に新しいページが挿入されます。

hpage

型: HWND

挿入するページへのハンドル。 最初に、CreatePropertySheetPage 関数の呼び出しによってページを作成する必要があります。

戻り値

型: BOOL

ページが正常に挿入された場合は 0 以外の値を返し、それ以外の場合は 0 を返します。

備考

挿入ポイントの後のページは、新しいページに合わせて右にシフトされます。

プロパティ シートは、新しいページに合わせてサイズ変更されません。 新しいページをプロパティ シートの最大ページより大きくしないでください。

プロパティ シートがページの一覧を操作している間に、多数のメッセージと 1 つの関数呼び出しが発生します。 このアクションが実行されている間、ページの一覧を変更しようとすると、予期しない結果が発生します。 したがって、PropSheetPageProc の実装で、または次の通知と Windows メッセージを処理するときに、PropSheet_InsertPage マクロを使用しないでください。

これらのメッセージのいずれかを処理している間、または PropSheetPageProc の実行中にプロパティ シート ページ 変更する必要がある場合は、プライベート Windows メッセージを自分で投稿します。 プロパティ シート マネージャーがタスクを完了するまで、アプリケーションはそのメッセージを受け取りません。 その後、ページの一覧を変更できます。

次の通知は、プロパティ シートの変更の影響も受けます。

必要な新しいページを指定するために 0 以外の値を (DWL_MSGRESULT経由で) 返す場合は、これらの通知に応答してページを追加または削除できます。 ただし、現在のページの前にあるページ (現在のページよりも小さいインデックスを持つページ) を挿入すると、PSN_KILLACTIVE が間違ったページに送信される可能性があることに注意してください。
Aero ウィザード スタイル (PSH_AEROWIZARD) を使用する場合、このマクロはサポートされていません。
 

必要条件

要件 価値
サポートされる最小クライアント Windows Vista [デスクトップ アプリのみ]
サポートされる最小サーバー Windows Server 2003 [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー prsht.h