CMFCPropertyGridCtrl 類別
本主題是為完整說明而加的。如需詳細資訊,請參閱位於 Visual Studio 安裝位置之 VC\atlmfc\src\mfc 資料夾中的原始程式碼。
支援能夠顯示屬性會依字母順序或階層順序的可編輯的屬性方格控制項。
class CMFCPropertyGridCtrl : public CWnd
Members
公用建構函式
名稱 |
描述 |
---|---|
建構 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 物件。 |
|
擷取屬性方格控制項標題的高度。 |
|
擷取目前的屬性方格控制項的左欄的寬度,包含每個屬性的名稱。 |
|
擷取屬性方格控制項的週框 (Bounding Rectangle)。 |
|
擷取指標對應於屬性方格控制項中的指定索引處的屬性物件。 |
|
擷取包含屬性值資料行的目前寬度。 |
|
擷取中的屬性數目屬性方格控制項。 |
|
擷取資料列的高度 (以屬性方格控制項。 |
|
擷取指向儲存在屬性方格控制項中捲軸控制項。(覆寫 CWnd::GetScrollBarCtrl)。 |
|
擷取屬性項目文字的色彩在目前屬性方格控制項。 |
|
CMFCPropertyGridCtrl::GetThisClass |
由框架以取得指向與這個類別型別的 CRuntimeClass 物件。 |
擷取指標對應於屬性方格控制項中項目的屬性設定為物件,如果指定的點在項目。這個方法也會指出在含有點的屬性方格控制項的區域。 |
|
初始化這個架構使用顯示目前屬性方格控制項的內部 CMFCHeaderCtrl 物件。 |
|
表示屬性方格控制項是否在字母的模式。 |
|
|
|
指示屬性方格控制項的描述範圍是否已經顯示。 |
|
表示每個屬性群組名稱是否透過目前的屬性方格控制項的寬度會顯示。 |
|
指示標題控制項是否已經顯示。 |
|
表示屬性方格控制項顯示如何修改的屬性。 |
|
表示此框架是否重新繪製目前的屬性方格控制項的名稱和值資料行中,當使用者調整資料行大小。 |
|
表示屬性方格控制項的外觀是否在中使用 [.NET 的樣式。 |
|
指定如何顯示修改的屬性。 |
|
CMFCPropertyGridCtrl::PreTranslateMessage |
由類別 CWinApp 將 Windows 訊息,然後才會傳送至 TranslateMessage 和 DispatchMessage Windows 函式之前。(覆寫 CWnd::PreTranslateMessage)。 |
從屬性方格控制項中所有屬性的物件。 |
|
若要還原所有屬性的原始值。 |
|
設定或重設依字母順序排列的方式。 |
|
指定布林值的標籤文字。 |
|
在 [屬性] 方格控制項的屬性。 |
|
提供各種屬性方格控制項項目指定自訂色彩。 |
|
在目前的屬性方格控制項的描述部分指定資料列的顯示。 |
|
指定是否顯示全型分類名稱屬性群組在目前屬性方格控制項。 |
|
定義要用來做為分隔符號的屬性 (Attribute) 值清單的字元。 |
|
指定這個框架是否重新繪製目前的屬性方格控制項的名稱和值資料行中,當使用者調整資料行大小。 |
|
設定屬性方格控制項中顯示為對 .NET 的樣式。 |
|
設定目前選取的色彩屬性的色彩值。 |
受保護的方法
名稱 |
描述 |
---|---|
重新繪製屬性方格控制項及其屬性。 |
|
會呼叫由屬性方格控制項排序屬性。 |
|
呼叫框架,當使用者開始修改屬性。 |
|
呼叫框架,當使用者停止修改屬性。 |
|
呼叫框架初始化屬性方格控制項。 |
|
呼叫由架構,在變更目前的選取範圍。 |
|
呼叫框架,當屬性在按一下 按鈕。 |
|
呼叫由架構在屬性方格控制項周圍繪製框線。 |
|
呼叫框架繪製描述區域和顯示描述文字。 |
|
呼叫由架構會顯示於屬性方格控制項的屬性清單。 |
|
呼叫由架構會顯示屬性。 |
|
呼叫框架,當屬性的值變更為。 |
|
呼叫框架,當包含下拉式方塊控制項的屬性已選取。 |
|
呼叫由架構驗證屬性資料。 |
備註
CMFCPropertyGridCtrl 類別顯示包含 CMFCPropertyGridProperty 從類別衍生的可編輯屬性的屬性方格控制項。每個屬性都代表型別,也可以包含子項目。屬性方格控制項支援可調整大小的區域中可能會顯示選取屬性的說明的底部。
若要使用屬性方格控制項,請 CMFCPropertyGridCtrl 建構物件 CMFCPropertyGridCtrl::Create 再呼叫方法。使用 CMFCPropertyGridCtrl::AddProperty 方法將屬性加入至清單。
選取屬性
而是表示值,屬性項目可以啟動讓使用者選取色彩、檔案或字型的對話方塊。
下表列出四個選取屬性型別:
類別 |
描述 |
---|---|
用來指定 String, Boolean,日期的值等的通用屬性。 |
|
用來選取色彩值的屬性。 |
|
用來選取檔案的屬性。 |
|
用來選取字型的屬性。 |
插圖
下圖說明顯示屬性以兩種方式的其中一個屬性方格控制項。第一個圖中以階層方式顯示屬性,第二個字母顯示屬性。
範例
您可以使用類別,在 CMFCPropertyGridCtrl 的各種方法。下列範例將示範如何設定屬性方格控制項物件。範例會示範如何啟用標題控制項,可描述區域,並將屬性方格控制項的外觀。這個範例也會示範如何設定控制項的字母順序模式,讓它根據它們的屬性名稱中控制項的排序所有屬性以及如何設定的屬性方格控制項中各個項目的自訂色彩。這個範例是 新的控制項範例的一部分。
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