您的位置:首页 > 运维架构

CMFCPropertyGridCtrl 使用简记

2015-01-25 19:01 423 查看
CMFCPropertyGridCtrl vc2008 新增加类使用方法:

创建:CMFCPropertyGridCtrl m_wndPropList ;

CRect rectDummy;

rectDummy.SetRectEmpty ();

if (!m_wndPropList .Create (WS_VISIBLE | WS_CHILD, rectDummy, this, 1))

{

TRACE0("Failed to create Properies Grid /n");

return -1; // fail to create

}

m_wndPropList.EnableHeaderCtrl (FALSE);//标头

m_wndPropList.EnableDescriptionArea ();//

m_wndPropList.SetVSDotNetLook ();//

增加项:

CMFCPropertyGridProperty* pMDITabsProp = new CMFCPropertyGridProperty (_T("Enable MDI Tabs"),

lpszMDITabsStyles [1],

_T("Enable or disable either the standard MDI Tabs feature, or MDI Tabbed Groups feature"),

idShowMDITabs);

pMDITabsProp->AddOption (_T ("None"));

pMDITabsProp->AddOption (_T ("MDI Tabs (Standard)"));

pMDITabsProp->AddOption (_T ("MDI Tabbed Groups"));

m_wndPropList.AddProperty (pMDITabsProp);

得到一项值:

CMFCPropertyGridProperty* m_pro = m_wndPropList ->GetProperty( int nIndex ) ;

CString str = m_pro ->GetValue();

回调方法:

afx_msg LRESULT OnPropertyChanged (WPARAM,LPARAM);

ON_REGISTERED_MESSAGE(AFX_WM_PROPERTY_CHANGED, OnPropertyChanged)

LRESULT CWorkspaceBar::OnPropertyChanged (WPARAM,LPARAM lParam)

{

CMFCPropertyGridProperty* pProp = (CMFCPropertyGridProperty*) lParam;

BOOL bResetMDIChild = FALSE;

switch ((int) pProp->GetData ())

{

case :pProp->GetValue(); break ;



}

http://qzone.qq.com/blog/4666942-1230445980
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: