CMFCPropertyGridCtrl クラス
更新 : 2007 年 11 月
このトピックは作成中です。
プロパティをアルファベット順または階層順に表示できる、編集可能なプロパティ グリッド コントロールをサポートします。
class CMFCPropertyGridCtrl : public CWnd
メンバ
パブリック コンストラクタ
名前 |
説明 |
---|---|
CMFCPropertyGridCtrl オブジェクトを構築します。 |
|
CMFCPropertyGridCtrl::~CMFCPropertyGridCtrl |
デストラクタです。 |
パブリック メソッド
名前 |
説明 |
---|---|
CMFCPropertyGridCtrl::accHitTest |
画面上の指定された位置にある子要素または子オブジェクトを取得するために、フレームワークによって呼び出されます (CWnd::accHitTest をオーバーライドします)。 |
CMFCPropertyGridCtrl::accLocation |
指定されたオブジェクトの現在の画面位置を取得するために、フレームワークによって呼び出されます (CWnd::accLocation をオーバーライドします)。 |
選択を変更するため、または指定されたオブジェクトのキーボード フォーカスを移動するために、フレームワークによって呼び出されます (CWnd::accSelect をオーバーライドします)。 |
|
プロパティ グリッド コントロールに新しいプロパティを追加します。 |
|
|
|
色を選択するためのダイアログ ボックスを閉じます。 |
|
プロパティ グリッド コントロールを作成し、プロパティ グリッド コントロール オブジェクトに関連付けます。 |
|
指定したプロパティをプロパティ グリッド コントロールから削除します。 |
|
|
|
プロパティの一覧の下に表示される説明領域を有効または無効にします。 |
|
プロパティ グリッド コントロールの上部にあるヘッダー コントロールを有効または無効にします。 |
|
プロパティ グリッド コントロールをスクロールし、指定されたプロパティが表示されるまで、プロパティ項目を展開します。 |
|
すべてのプロパティ グリッド コントロール ノードの展開または折りたたみを行います。 |
|
ユーザー定義の DWORD 値に関連付けられているプロパティを取得します。 |
|
CMFCPropertyGridCtrl::get_accChild |
指定された子の IDispatchインターフェイスのアドレスを取得するために、フレームワークによって呼び出されます (CWnd::get_accChild をオーバーライドします)。 |
オブジェクトに属する子の数を取得するために、フレームワークによって呼び出されます (CWnd::get_accChildCount をオーバーライドします)。 |
|
CMFCPropertyGridCtrl::get_accDefaultAction |
オブジェクトの既定のアクションを記述する文字列を取得するために、フレームワークによって呼び出されます (CWnd::get_accDefaultAction をオーバーライドします)。 |
CMFCPropertyGridCtrl::get_accDescription |
指定されたオブジェクトの外観を記述する文字列を取得するために、フレームワークによって呼び出されます (CWnd::get_accDescription をオーバーライドします)。 |
キーボード フォーカスを保持するオブジェクトを取得するために、フレームワークによって呼び出されます (CWnd::get_accFocus をオーバーライドします)。 |
|
オブジェクトの Help プロパティ文字列を取得するために、フレームワークによって呼び出されます (CWnd::get_accHelp をオーバーライドします)。 |
|
指定されたオブジェクトに関連付けられた WinHelp ファイルの完全パス、およびそのファイル内の適切なトピックの識別子を取得するために、フレームワークによって呼び出されます (CWnd::get_accHelpTopic をオーバーライドします)。 |
|
指定されたオブジェクトのショートカット キーまたはアクセス キーを取得するために、フレームワークによって呼び出されます (CWnd::get_accKeyboardShortcut をオーバーライドします)。 |
|
CMFCPropertyGridCtrl::get_accName |
指定されたオブジェクトの名前を取得するために、フレームワークによって呼び出されます (CWnd::get_accName をオーバーライドします)。 |
CMFCPropertyGridCtrl::get_accRole |
指定されたオブジェクトの役割を記述する情報を取得するために、フレームワークによって呼び出されます (CWnd::get_accRole をオーバーライドします)。 |
オブジェクトの選択されている子を取得するために、フレームワークによって呼び出されます (CWnd::get_accSelection をオーバーライドします)。 |
|
CMFCPropertyGridCtrl::get_accState |
指定されたオブジェクトの現在の状態を取得するために、フレームワークによって呼び出されます (CWnd::get_accState をオーバーライドします)。 |
CMFCPropertyGridCtrl::get_accValue |
指定されたオブジェクトの値を取得するために、フレームワークによって呼び出されます (CWnd::get_accValue をオーバーライドします)。 |
現在のプロパティ グリッド コントロールの背景色を取得します。 |
|
現在のプロパティ グリッド コントロールのテキストの Windows フォントを太字スタイルで取得します。 |
|
現在選択されているプロパティを取得します。 |
|
プロパティ グリッド コントロール要素に対して現在定義されているカスタム カラーを取得します。 |
|
プロパティ グリッド コントロールのの下部にある説明領域の高さを取得します。 |
|
現在のプロパティ グリッド コントロールの説明領域の行数を取得します。 |
|
現在のプロパティ グリッド コントロールを表示するためにフレームワークによって使用される内部 CMFCHeaderCtrl オブジェクトを取得します。 |
|
プロパティ グリッド コントロールのヘッダーの高さを取得します。 |
|
現在のプロパティ グリッド コントロールの左側の列の幅を取得します。この列には、各プロパティの名前が格納されます。 |
|
プロパティ グリッド コントロールに外接する四角形を取得します。 |
|
プロパティ グリッド コントロール項目の指定したインデックスに対応するプロパティ オブジェクトへのポインタを取得します。 |
|
プロパティ値を格納する列の現在の幅を取得します。 |
|
プロパティ グリッド コントロール内のプロパティの数を取得します。 |
|
プロパティ グリッド コントロールの行の高さを取得します。 |
|
プロパティ グリッド コントロール内のスクロール バー コントロールへのポインタを取得します (CWnd::GetScrollBarCtrl をオーバーライドします)。 |
|
現在のプロパティ グリッド コントロールのプロパティ項目のテキストの色を取得します。 |
|
CMFCPropertyGridCtrl::GetThisClass |
このクラス型に関連付けられた CRuntimeClass オブジェクトへのポインタを取得するために、フレームワークによって使用されます。 |
指定された位置がプロパティ グリッド コントロール項目内に存在する場合、その項目に対応するプロパティ オブジェクトへのポインタを取得します。このメソッドは、位置を含むプロパティ グリッド コントロール内の領域も示します。 |
|
現在のプロパティ グリッド コントロールを表示するためにフレームワークによって使用される内部 CMFCHeaderCtrl オブジェクトを初期化します。 |
|
プロパティ グリッド コントロールがアルファベット モードであるかどうかを示します。 |
|
|
|
プロパティ グリッド コントロールの説明領域が表示されるかどうかを示します。 |
|
現在のプロパティ グリッド コントロールの幅いっぱいに各プロパティ グループ名を表示するかどうかを指定します。 |
|
ヘッダー コントロールが表示されるかどうかを示します。 |
|
プロパティ グリッド コントロールが変更されたプロパティを表示する方法を示します。 |
|
ユーザーが列のサイズを変更するときに、フレームワークが現在のプロパティ グリッド コントロールの名前と値の列を再描画するかどうかを指定します。 |
|
プロパティ グリッド コントロールの外観が VS .NET で使用されるスタイルかどうかを示します。 |
|
変更されたプロパティの表示方法を指定します。 |
|
CMFCPropertyGridCtrl::PreTranslateMessage |
ウィンドウ メッセージが TranslateMessage Windows 関数および DispatchMessage Windows 関数へディスパッチされる前に、そのメッセージを変換するために CWinApp クラスで使用されます (CWnd::PreTranslateMessage をオーバーライドします)。 |
プロパティ グリッド コントロールからすべてのプロパティ オブジェクトを削除します。 |
|
すべてのプロパティの元の値を復元します。 |
|
アルファベット モードを設定またはリセットします。 |
|
ブール値ラベルのテキストを指定します。 |
|
プロパティ グリッド コントロールのプロパティを選択します。 |
|
プロパティ グリッド コントロールの各種要素のカスタム カラーを指定します。 |
|
現在のプロパティ グリッド コントロールの説明セクションに表示する行数を指定します。 |
|
現在のプロパティ グリッド コントロールの幅いっぱいにプロパティのグループのカテゴリ名を表示するかどうかを指定します。 |
|
プロパティ値のリストで区切り記号として使用される文字を定義します。 |
|
ユーザーが列のサイズを変更するときに、フレームワークが現在のプロパティ グリッド コントロールの名前と値の列を再描画するかどうかを指定します。 |
|
プロパティ グリッド コントロールの外観を、VS .NET で使用されているスタイルに設定します。 |
|
現在選択されている色プロパティのカラー値を設定します。 |
プロテクト メソッド
名前 |
説明 |
---|---|
プロパティ グリッド コントロールおよびそのプロパティを再描画します。 |
|
プロパティを並べ替えるために、プロパティ グリッド コントロールによって呼び出されます。 |
|
ユーザーがプロパティの変更を開始したときに、フレームワークによって呼び出されます。 |
|
ユーザーがプロパティの変更を停止したときに、フレームワークによって呼び出されます。 |
|
プロパティ グリッド コントロールを初期化するために、フレームワークによって呼び出されます。 |
|
現在の選択項目が変更されたときに、フレームワークによって呼び出されます。 |
|
プロパティ ボタンがクリックされたときに、フレームワークによって呼び出されます。 |
|
プロパティ グリッド コントロールの周囲に境界線を描画するために、フレームワークによって呼び出されます。 |
|
説明領域の描画および説明テキストの表示を行うためにフレームワークによって呼び出されます。 |
|
プロパティ グリッド コントロールのプロパティ リストを表示するために、フレームワークによって呼び出されます。 |
|
プロパティを表示するために、フレームワークによって呼び出されます。 |
|
プロパティの値が変更されたときに、フレームワークによって呼び出されます。 |
|
コンボ ボックス コントロールを含むプロパティが選択されたときに、フレームワークによって呼び出されます。 |
|
プロパティ データを検証するために、フレームワークによって呼び出されます。 |
解説
CMFCPropertyGridCtrl クラスは、CMFCPropertyGridProperty クラスから派生した編集可能なプロパティを含むプロパティ グリッド コントロールを表示します。各プロパティは 1 つの型を表し、サブ項目を含むことができます。プロパティ グリッド コントロールは、一番下でサイズを変更できる領域を使用します。ここには、選択したプロパティの説明を表示できます。
プロパティ グリッド コントロールを使用するには、CMFCPropertyGridCtrl オブジェクトを構築し、次に CMFCPropertyGridCtrl::Create メソッドを呼び出します。一覧にプロパティを追加するには、CMFCPropertyGridCtrl::AddProperty メソッドを使用します。
選択プロパティ
プロパティ項目は、値を表すのではなく、ユーザーが色、ファイル、またはフォントを選択できるダイアログ ボックスを開始することができます。
次の表は、4 種類の選択プロパティを一覧にしたものです。
クラス |
説明 |
---|---|
文字列、ブール値、データなどを指定するために使用される一般的な目的のプロパティ。 |
|
カラー値を選択するために使用されるプロパティ。 |
|
ファイルを選択するために使用されるプロパティ。 |
|
フォントを選択するために使用されるプロパティ。 |
図
次の図は、プロパティを表示するプロパティ グリッド コントロールを 2 つの方法で示します。1 番目の図は、プロパティを階層的に示し、2 番目の図はプロパティをアルファベット順に示しています。
使用例
CMFCPropertyGridCtrl クラスのさまざまなメソッドを使用してプロパティ グリッド コントロール オブジェクトを設定する方法を次の例に示します。例では、ヘッダー コントロールの有効化、説明領域の有効化、プロパティ グリッド コントロールの外観の設定を行う方法について示しています。また、コントロールがすべてのプロパティをプロパティ名で並べ替えるためにアルファベット モードを設定する方法、およびプロパティ グリッド コントロールの各種の要素にカスタム カラーを設定する方法も示しています。この例は、「NewControls サンプル : MFC コントロールのデモ アプリケーション」の一部です。
CMFCPropertyGridCtrl m_wndPropList;
...
m_wndPropList.EnableHeaderCtrl();
m_wndPropList.EnableDescriptionArea();
m_wndPropList.SetVSDotNetLook(m_bDotNetLook);
// BOOL m_bMarkChanged
m_wndPropList.MarkModifiedProperties(m_bMarkChanged);
// BOOL m_bPropListCategorized
m_wndPropList.SetAlphabeticMode(!m_bPropListCategorized);
// BOOL m_bShowDragContext
m_wndPropList.SetShowDragContext(m_bShowDragContext);
...
// BOOL m_bMarkSortedColumn
m_wndList.EnableMarkSortedColumn(m_bMarkSortedColumn);
...
// BOOL m_bPropListCustomColors
// set custom colors for various elements of the property grid control
if (m_bPropListCustomColors)
{
m_wndPropList.SetCustomColors(RGB(228, 243, 254), RGB(46, 70, 165), RGB(200, 236, 209), RGB(33, 102, 49), RGB(255, 229, 216), RGB(128, 0, 0), RGB(159, 159, 255));
}
else
{
COLORREF c = (COLORREF)-1;
m_wndPropList.SetCustomColors(c, c, c, c, c, c, c);
}
m_wndPropList.RedrawWindow();
...
// restore original values of the properties
m_wndPropList.ResetOriginalValues();
継承階層
必要条件
ヘッダー : afxpropertygridctrl.h