いくつかのユーザー インターフェイス (UI) コンポーネントをカスタマイズすることができる MMC スナップイン オブジェクトのです。一部のツールバー ボタンやメニュー項目など、これらの領域の MMC アプリケーションのコンポーネントに影響を与えます。最後のコンポーネントは、オブジェクトのプロパティは、ユーザーによってカスタマイズすることができます、スナップインが表示されます、標準のプロパティ シートです。既定では、MMC スナップインのウィザードは、カスタムの UI 要素を生成しません。ただし、あるカスタム UI 要素を移動できる場所を示すプレース ホルダーのスナップイン オブジェクト コード全体。
1 つの領域をカスタマイズすることができますスナップイン オブジェクトの項目のコンテキスト メニューです。4 つのメニュー項目はカスタマイズが可能: トップ、新しい、タスク、およびビュー。スナップインのウィザード メニュー リソースを 4 つのスロットのプレース ホルダーで作成します。
メニュー リソースは、スナップイン オブジェクトによって知られているため、任意のカスタム メニュー項目の下の適切なスロットに必要な自動的にスナップイン項目のコンテキスト メニューで表示を追加します。スナップイン項目がデータ オブジェクトに、次の宣言が含まれているために、使用するメニュー リソースを知っています。:
SNAPINMENUID(IDR_MMCSNAP_MENU)
プラットフォーム SDK のインターフェイスを提供 ( IExtendContextMenu) スナップイン項目のコンテキスト メニューをカスタマイズします。ほとんどの場合、このインターフェイスを直接呼び出す必要はありませんが、スナップインで進んでいる場合は、このインターフェイスの詳細については、プラットフォーム SDKをが。
ユーザー設定のツールバーをスナップイン オブジェクトを使用する場合、ツール バー リソースを作成したら、任意の数のボタンに追加できます。カスタム タスクを処理するハンドラーの各ボタンを提供することすることができます。詳細についてを参照してください、ツール バー リソースから、スナップイン オブジェクトの追加方法ですか?。
プラットフォーム SDK のインターフェイスを提供 ( IExtendControlbar) スナップインのコントロール バーをカスタマイズします。ほとんどの場合、このインターフェイスを直接呼び出す必要はありませんが、スナップインで進んでいる場合は、このインターフェイスの詳細については、プラットフォーム SDKをが。
各スナップイン項目、ユーザーがマウスを右クリックしたときに、コンテキスト メニューからアクセスできる、標準のプロパティ シートを表示できます。
既定では、MMC スナップインのウィザードは、この機能の実装を行いません。ただし、 IExtendPropertySheetチェック ボックスを選択した場合、ウィザードは既定のプロパティ ページ クラスを作成 ( CSnapNamePage 、 CSnapInPropertyPageImplから派生)、プロパティ シートのダイアログ リソース (としてSnapName)。
この機能を完了するには、スナップインの項目のプロパティを変更するには、ユーザーがコントロールを追加します。
追加のページをプロパティ シートに追加するには、新しいプロパティ ページ クラス、新しいダイアログ リソース、データ クラスのCreatePropertyPagesメソッドに追加コード必要があります。この例では、新しいクラスと呼ばれます CMMCSnapPage2 、ダイアログ リソースIDD_MMCSNAP2。
必要なクラスとリソースを作成し、新しいプロパティ ページをシートに追加するには、 CreatePropertyPagesメソッドを追加、したら。たとえば、次のコードを新しいページを追加します ( pPage2 )、実装で新しい CMMCSnapPage2 をスナップイン オブジェクトのクラス:
CMMCSnapPage2 ※ pPage2 新しい CMMCSnapPage2(_T("MMCSnap2")); =lpProvider-gt;AddPage (pPage2 - > Create())
プラットフォーム SDK のインターフェイスを提供 ( IExtendPropertySheet) スナップインのプロパティ シートをカスタマイズします。ほとんどの場合、このインターフェイスを直接呼び出す必要はありませんが、スナップインで進んでいる場合は、このインターフェイスの詳細については、プラットフォーム SDKをが。