次の方法で共有


CMFCPropertyGridCtrl クラス

更新 : 2007 年 11 月

このトピックは作成中です。

プロパティをアルファベット順または階層順に表示できる、編集可能なプロパティ グリッド コントロールをサポートします。

class CMFCPropertyGridCtrl : public CWnd

メンバ

パブリック コンストラクタ

名前

説明

CMFCPropertyGridCtrl::CMFCPropertyGridCtrl

CMFCPropertyGridCtrl オブジェクトを構築します。

CMFCPropertyGridCtrl::~CMFCPropertyGridCtrl

デストラクタです。

パブリック メソッド

名前

説明

CMFCPropertyGridCtrl::accHitTest

画面上の指定された位置にある子要素または子オブジェクトを取得するために、フレームワークによって呼び出されます (CWnd::accHitTest をオーバーライドします)。

CMFCPropertyGridCtrl::accLocation

指定されたオブジェクトの現在の画面位置を取得するために、フレームワークによって呼び出されます (CWnd::accLocation をオーバーライドします)。

CMFCPropertyGridCtrl::accSelect

選択を変更するため、または指定されたオブジェクトのキーボード フォーカスを移動するために、フレームワークによって呼び出されます (CWnd::accSelect をオーバーライドします)。

CMFCPropertyGridCtrl::AddProperty

プロパティ グリッド コントロールに新しいプロパティを追加します。

CMFCPropertyGridCtrl::AlwaysShowUserToolTip

 

CMFCPropertyGridCtrl::CloseColorPopup

色を選択するためのダイアログ ボックスを閉じます。

CMFCPropertyGridCtrl::Create

プロパティ グリッド コントロールを作成し、プロパティ グリッド コントロール オブジェクトに関連付けます。

CMFCPropertyGridCtrl::DeleteProperty

指定したプロパティをプロパティ グリッド コントロールから削除します。

CMFCPropertyGridCtrl::DrawControlBarColors

 

CMFCPropertyGridCtrl::EnableDescriptionArea

プロパティの一覧の下に表示される説明領域を有効または無効にします。

CMFCPropertyGridCtrl::EnableHeaderCtrl

プロパティ グリッド コントロールの上部にあるヘッダー コントロールを有効または無効にします。

CMFCPropertyGridCtrl::EnsureVisible

プロパティ グリッド コントロールをスクロールし、指定されたプロパティが表示されるまで、プロパティ項目を展開します。

CMFCPropertyGridCtrl::ExpandAll

すべてのプロパティ グリッド コントロール ノードの展開または折りたたみを行います。

CMFCPropertyGridCtrl::FindItemByData

ユーザー定義の DWORD 値に関連付けられているプロパティを取得します。

CMFCPropertyGridCtrl::get_accChild

指定された子の IDispatchインターフェイスのアドレスを取得するために、フレームワークによって呼び出されます (CWnd::get_accChild をオーバーライドします)。

CMFCPropertyGridCtrl::get_accChildCount

オブジェクトに属する子の数を取得するために、フレームワークによって呼び出されます (CWnd::get_accChildCount をオーバーライドします)。

CMFCPropertyGridCtrl::get_accDefaultAction

オブジェクトの既定のアクションを記述する文字列を取得するために、フレームワークによって呼び出されます (CWnd::get_accDefaultAction をオーバーライドします)。

CMFCPropertyGridCtrl::get_accDescription

指定されたオブジェクトの外観を記述する文字列を取得するために、フレームワークによって呼び出されます (CWnd::get_accDescription をオーバーライドします)。

CMFCPropertyGridCtrl::get_accFocus

キーボード フォーカスを保持するオブジェクトを取得するために、フレームワークによって呼び出されます (CWnd::get_accFocus をオーバーライドします)。

CMFCPropertyGridCtrl::get_accHelp

オブジェクトの Help プロパティ文字列を取得するために、フレームワークによって呼び出されます (CWnd::get_accHelp をオーバーライドします)。

CMFCPropertyGridCtrl::get_accHelpTopic

指定されたオブジェクトに関連付けられた WinHelp ファイルの完全パス、およびそのファイル内の適切なトピックの識別子を取得するために、フレームワークによって呼び出されます (CWnd::get_accHelpTopic をオーバーライドします)。

CMFCPropertyGridCtrl::get_accKeyboardShortcut

指定されたオブジェクトのショートカット キーまたはアクセス キーを取得するために、フレームワークによって呼び出されます (CWnd::get_accKeyboardShortcut をオーバーライドします)。

CMFCPropertyGridCtrl::get_accName

指定されたオブジェクトの名前を取得するために、フレームワークによって呼び出されます (CWnd::get_accName をオーバーライドします)。

CMFCPropertyGridCtrl::get_accRole

指定されたオブジェクトの役割を記述する情報を取得するために、フレームワークによって呼び出されます (CWnd::get_accRole をオーバーライドします)。

CMFCPropertyGridCtrl::get_accSelection

オブジェクトの選択されている子を取得するために、フレームワークによって呼び出されます (CWnd::get_accSelection をオーバーライドします)。

CMFCPropertyGridCtrl::get_accState

指定されたオブジェクトの現在の状態を取得するために、フレームワークによって呼び出されます (CWnd::get_accState をオーバーライドします)。

CMFCPropertyGridCtrl::get_accValue

指定されたオブジェクトの値を取得するために、フレームワークによって呼び出されます (CWnd::get_accValue をオーバーライドします)。

CMFCPropertyGridCtrl::GetBkColor

現在のプロパティ グリッド コントロールの背景色を取得します。

CMFCPropertyGridCtrl::GetBoldFont

現在のプロパティ グリッド コントロールのテキストの Windows フォントを太字スタイルで取得します。

CMFCPropertyGridCtrl::GetCurSel

現在選択されているプロパティを取得します。

CMFCPropertyGridCtrl::GetCustomColors

プロパティ グリッド コントロール要素に対して現在定義されているカスタム カラーを取得します。

CMFCPropertyGridCtrl::GetDescriptionHeight

プロパティ グリッド コントロールのの下部にある説明領域の高さを取得します。

CMFCPropertyGridCtrl::GetDescriptionRows

現在のプロパティ グリッド コントロールの説明領域の行数を取得します。

CMFCPropertyGridCtrl::GetHeaderCtrl

現在のプロパティ グリッド コントロールを表示するためにフレームワークによって使用される内部 CMFCHeaderCtrl オブジェクトを取得します。

CMFCPropertyGridCtrl::GetHeaderHeight

プロパティ グリッド コントロールのヘッダーの高さを取得します。

CMFCPropertyGridCtrl::GetLeftColumnWidth

現在のプロパティ グリッド コントロールの左側の列の幅を取得します。この列には、各プロパティの名前が格納されます。

CMFCPropertyGridCtrl::GetListRect

プロパティ グリッド コントロールに外接する四角形を取得します。

CMFCPropertyGridCtrl::GetProperty

プロパティ グリッド コントロール項目の指定したインデックスに対応するプロパティ オブジェクトへのポインタを取得します。

CMFCPropertyGridCtrl::GetPropertyColumnWidth

プロパティ値を格納する列の現在の幅を取得します。

CMFCPropertyGridCtrl::GetPropertyCount

プロパティ グリッド コントロール内のプロパティの数を取得します。

CMFCPropertyGridCtrl::GetRowHeight

プロパティ グリッド コントロールの行の高さを取得します。

CMFCPropertyGridCtrl::GetScrollBarCtrl

プロパティ グリッド コントロール内のスクロール バー コントロールへのポインタを取得します (CWnd::GetScrollBarCtrl をオーバーライドします)。

CMFCPropertyGridCtrl::GetTextColor

現在のプロパティ グリッド コントロールのプロパティ項目のテキストの色を取得します。

CMFCPropertyGridCtrl::GetThisClass

このクラス型に関連付けられた CRuntimeClass オブジェクトへのポインタを取得するために、フレームワークによって使用されます。

CMFCPropertyGridCtrl::HitTest

指定された位置がプロパティ グリッド コントロール項目内に存在する場合、その項目に対応するプロパティ オブジェクトへのポインタを取得します。このメソッドは、位置を含むプロパティ グリッド コントロール内の領域も示します。

CMFCPropertyGridCtrl::InitHeader

現在のプロパティ グリッド コントロールを表示するためにフレームワークによって使用される内部 CMFCHeaderCtrl オブジェクトを初期化します。

CMFCPropertyGridCtrl::IsAlphabeticMode

プロパティ グリッド コントロールがアルファベット モードであるかどうかを示します。

CMFCPropertyGridCtrl::IsAlwaysShowUserToolTip

 

CMFCPropertyGridCtrl::IsDescriptionArea

プロパティ グリッド コントロールの説明領域が表示されるかどうかを示します。

CMFCPropertyGridCtrl::IsGroupNameFullWidth

現在のプロパティ グリッド コントロールの幅いっぱいに各プロパティ グループ名を表示するかどうかを指定します。

CMFCPropertyGridCtrl::IsHeaderCtrl

ヘッダー コントロールが表示されるかどうかを示します。

CMFCPropertyGridCtrl::IsMarkModifiedProperties

プロパティ グリッド コントロールが変更されたプロパティを表示する方法を示します。

CMFCPropertyGridCtrl::IsShowDragContext

ユーザーが列のサイズを変更するときに、フレームワークが現在のプロパティ グリッド コントロールの名前と値の列を再描画するかどうかを指定します。

CMFCPropertyGridCtrl::IsVSDotNetLook

プロパティ グリッド コントロールの外観が VS .NET で使用されるスタイルかどうかを示します。

CMFCPropertyGridCtrl::MarkModifiedProperties

変更されたプロパティの表示方法を指定します。

CMFCPropertyGridCtrl::PreTranslateMessage

ウィンドウ メッセージが TranslateMessage Windows 関数および DispatchMessage Windows 関数へディスパッチされる前に、そのメッセージを変換するために CWinApp クラスで使用されます (CWnd::PreTranslateMessage をオーバーライドします)。

CMFCPropertyGridCtrl::RemoveAll

プロパティ グリッド コントロールからすべてのプロパティ オブジェクトを削除します。

CMFCPropertyGridCtrl::ResetOriginalValues

すべてのプロパティの元の値を復元します。

CMFCPropertyGridCtrl::SetAlphabeticMode

アルファベット モードを設定またはリセットします。

CMFCPropertyGridCtrl::SetBoolLabels

ブール値ラベルのテキストを指定します。

CMFCPropertyGridCtrl::SetCurSel

プロパティ グリッド コントロールのプロパティを選択します。

CMFCPropertyGridCtrl::SetCustomColors

プロパティ グリッド コントロールの各種要素のカスタム カラーを指定します。

CMFCPropertyGridCtrl::SetDescriptionRows

現在のプロパティ グリッド コントロールの説明セクションに表示する行数を指定します。

CMFCPropertyGridCtrl::SetGroupNameFullWidth

現在のプロパティ グリッド コントロールの幅いっぱいにプロパティのグループのカテゴリ名を表示するかどうかを指定します。

CMFCPropertyGridCtrl::SetListDelimiter

プロパティ値のリストで区切り記号として使用される文字を定義します。

CMFCPropertyGridCtrl::SetShowDragContext

ユーザーが列のサイズを変更するときに、フレームワークが現在のプロパティ グリッド コントロールの名前と値の列を再描画するかどうかを指定します。

CMFCPropertyGridCtrl::SetVSDotNetLook

プロパティ グリッド コントロールの外観を、VS .NET で使用されているスタイルに設定します。

CMFCPropertyGridCtrl::UpdateColor

現在選択されている色プロパティのカラー値を設定します。

プロテクト メソッド

名前

説明

CMFCPropertyGridCtrl::AdjustLayout

プロパティ グリッド コントロールおよびそのプロパティを再描画します。

CMFCPropertyGridCtrl::CompareProps

プロパティを並べ替えるために、プロパティ グリッド コントロールによって呼び出されます。

CMFCPropertyGridCtrl::EditItem

ユーザーがプロパティの変更を開始したときに、フレームワークによって呼び出されます。

CMFCPropertyGridCtrl::EndEditItem

ユーザーがプロパティの変更を停止したときに、フレームワークによって呼び出されます。

CMFCPropertyGridCtrl::Init

プロパティ グリッド コントロールを初期化するために、フレームワークによって呼び出されます。

CMFCPropertyGridCtrl::OnChangeSelection

現在の選択項目が変更されたときに、フレームワークによって呼び出されます。

CMFCPropertyGridCtrl::OnClickButton

プロパティ ボタンがクリックされたときに、フレームワークによって呼び出されます。

CMFCPropertyGridCtrl::OnDrawBorder

プロパティ グリッド コントロールの周囲に境界線を描画するために、フレームワークによって呼び出されます。

CMFCPropertyGridCtrl::OnDrawDescription

説明領域の描画および説明テキストの表示を行うためにフレームワークによって呼び出されます。

CMFCPropertyGridCtrl::OnDrawList

プロパティ グリッド コントロールのプロパティ リストを表示するために、フレームワークによって呼び出されます。

CMFCPropertyGridCtrl::OnDrawProperty

プロパティを表示するために、フレームワークによって呼び出されます。

CMFCPropertyGridCtrl::OnPropertyChanged

プロパティの値が変更されたときに、フレームワークによって呼び出されます。

CMFCPropertyGridCtrl::OnSelectCombo

コンボ ボックス コントロールを含むプロパティが選択されたときに、フレームワークによって呼び出されます。

CMFCPropertyGridCtrl::ValidateItemData

プロパティ データを検証するために、フレームワークによって呼び出されます。

解説

CMFCPropertyGridCtrl クラスは、CMFCPropertyGridProperty クラスから派生した編集可能なプロパティを含むプロパティ グリッド コントロールを表示します。各プロパティは 1 つの型を表し、サブ項目を含むことができます。プロパティ グリッド コントロールは、一番下でサイズを変更できる領域を使用します。ここには、選択したプロパティの説明を表示できます。

プロパティ グリッド コントロールを使用するには、CMFCPropertyGridCtrl オブジェクトを構築し、次に CMFCPropertyGridCtrl::Create メソッドを呼び出します。一覧にプロパティを追加するには、CMFCPropertyGridCtrl::AddProperty メソッドを使用します。

選択プロパティ

プロパティ項目は、値を表すのではなく、ユーザーが色、ファイル、またはフォントを選択できるダイアログ ボックスを開始することができます。

次の表は、4 種類の選択プロパティを一覧にしたものです。

クラス

説明

CMFCPropertyGridProperty クラス

文字列、ブール値、データなどを指定するために使用される一般的な目的のプロパティ。

CMFCPropertyGridColorProperty クラス

カラー値を選択するために使用されるプロパティ。

CMFCPropertyGridFileProperty クラス

ファイルを選択するために使用されるプロパティ。

CMFCPropertyGridFontProperty クラス

フォントを選択するために使用されるプロパティ。

次の図は、プロパティを表示するプロパティ グリッド コントロールを 2 つの方法で示します。1 番目の図は、プロパティを階層的に示し、2 番目の図はプロパティをアルファベット順に示しています。

プロパティ リスト PropertySheet

使用例

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();

継承階層

CObject

   CCmdTarget

      CWnd

         CMFCPropertyGridCtrl

必要条件

ヘッダー : afxpropertygridctrl.h

参照

概念

MFC 階層図

その他の技術情報

クラス (MFC Feature Pack)