码迷,mamicode.com
首页 > 编程语言 > 详细

属性控件CMFCPropertyGridCtrl简单用法

时间:2019-02-11 17:18:55      阅读:226      评论:0      收藏:0      [点我收藏+]

标签:bsp   编辑框   名称   box   初始   dct   nbsp   ctrl   小数   

这是我的原创!

用一堆的编辑框下拉框做配置界面,很是繁琐,还要对齐排版……
用这个属性控件 CMFCPropertyGridCtrl 就可以统一风格了。

 1 //初始化
 2 CMFCPropertyGridCtrl m_propGrid;    //属性控件
 3 m_pPropName = new CMFCPropertyGridProperty(_T("名称"), _T(""), _T("描述")); //属性项
 4 m_pPropBuy = new CMFCPropertyGridProperty(_T("占比(%)"), (float)0.1, _T("")); //这里必须强制指定类型,否则取值会乱
 5 m_propGrid.AddProperty(m_pPropBuy);    //控件中加入一个属性项
 6 //可以添加的属性有4类
 7 CMFCPropertyGridProperty
 8 CMFCPropertyGridColorProperty
 9 CMFCPropertyGridFileProperty
10 CMFCPropertyGridFontProperty
11 
12 //添加下拉选项
13 prop->AddOption("yes");
14 prop->AddOption("no");
15 prop->AllowEdit(FALSE);
16 
17 //取值
18 COleVariant v = m_pPropName->GetValue();    //这回的是这种万用值,是union实现的
19 CString name;
20 name = v.bstrVal;    //字符串要这样转
21 float f = m_pPropBuy->GetValue().fltVal;    //小数,取值类型要与设置值的类型完全一致
22 
23 //事件通知
24 AFX_WM_PROPERTY_CHANGED    //用类向导添加这个消息响应,通知来的就是属性项的指针了
25 
26 //缺点
27 对于bool类型,不能显示为CheckBox,看起来不好

 

属性控件CMFCPropertyGridCtrl简单用法

标签:bsp   编辑框   名称   box   初始   dct   nbsp   ctrl   小数   

原文地址:https://www.cnblogs.com/zhaojk2010/p/10362308.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!