CMFCPropertyGridCtrl的基本用法.doc_第1页
CMFCPropertyGridCtrl的基本用法.doc_第2页
CMFCPropertyGridCtrl的基本用法.doc_第3页
CMFCPropertyGridCtrl的基本用法.doc_第4页
CMFCPropertyGridCtrl的基本用法.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VS08SP1中CMFCPropertyGridCtrl的基本用法 收藏 在DLG中的基本应用 。首先在Cxxdlg.h文件中加入public:CMFCPropertyGridCtrl m_MFCPGCtrl;CMFCPropertyGridProperty* pGroup1;CMFCPropertyGridProperty* pGroup2;然后Cxxdlg.cpp中的OnInitDialog()中CRect rc;GetClientRect(rc);rc.bottom -= 50;rc.left += 50;rc.right -= 50;m_MFCPGCtrl.Create(WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER,rc,this,IDC_CMFCPGCTRL);m_MFCPGCtrl.EnableHeaderCtrl(true,_T(参数),_T(值);m_MFCPGCtrl.EnableDescriptionArea();m_MFCPGCtrl.SetVSDotNetLook();m_MFCPGCtrl.MarkModifiedProperties();m_MFCPGCtrl.SetAlphabeticMode(false);m_MFCPGCtrl.SetShowDragContext();pGroup1 = new CMFCPropertyGridProperty(_T(参数组1);pGroup2 = new CMFCPropertyGridProperty(_T(参数组2);pGroup3 = new CMFCPropertyGridProperty(_T(参数组3);pGroup1-AddSubItem(new CMFCPropertyGridProperty(_T(参数1),_T(2.5),_T(这是参数1的说明);pGroup1-AddSubItem(new CMFCPropertyGridProperty(_T(参数2),_T(3.5),_T(这是参数2的说明);pGroup2-AddSubItem(new CMFCPropertyGridProperty(_T(参数3),_T(4.5),_T(这是参数3的说明);pGroup2-AddSubItem(new CMFCPropertyGridProperty(_T(参数4),_T(5.5),_T(这是参数4的说明);pGroup3-AddSubItem(new CMFCPropertyGridFileProperty(_T(选择文件), TRUE, _T(D:defaule.csv), _T(csv), NULL, _T(csv Files(*.csv)|*.csv|All Files(*.*)|*.*|), _T(选择csv文件);/选择文件按钮m_MFCPGCtrl.AddProperty(pGroup1);m_MFCPGCtrl.AddProperty(pGroup2);m_MFCPGCtrl.AddProperty(pGroup3);m_MFCPGCtrl.ExpandAll();就ok了 下面说下 通过消息活动输入值和输入的位置.h中加入afx_msg LRESULT OnPropertyChanged(WPARAM,LPARAM);.cpp中加入红色BEGIN_MESSAGE_MAP(CCMFCPGCtrlDlg, CDialog)ON_WM_SYSCOMMAND()ON_WM_PAINT()ON_WM_QUERYDRAGICON()/AFX_MSG_MAPON_REGISTERED_MESSAGE(AFX_WM_PROPERTY_CHANGED, OnPropertyChanged)END_MESSAGE_MAP()然后添加函数LRESULT CCMFCPGCtrlDlg:OnPropertyChanged (WPARAM,LPARAM lParam)CMFCPropertyGridProperty* pProp = (CMFCPropertyGridProperty*) lParam;int i = (int) pProp-GetData ();CString s = pProp-GetName();/被改变的参数名COleVariant t = pProp-GetValue();/改变之后的值t = pProp-GetOriginalValue();/改变之前的值CString d;d = t.bstrVal;/从COleVariant到CStringreturn 0;=2010.07.01更新今天发现vs2008sp1里 用向导生成的SDI vs主题框架里 就有很多CMFCPropertyGridProperty的应用可以参考=2010.08.02选项里添加ComboBox 也很方便CMFCPropertyGridProperty* pProp = new CMFCPropertyGridProperty(_T(边框), _T(Dialog Frame), _T(其中之一: 无(None)、细(Thin)、可调整大小(Resizable)、对话框外框(Dialog Frame);pProp-AddOption(_T(None);pProp-AddOption(_T(Thin);pProp-A

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论