类似VB中的分类属性表控件

王朝vc·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

类似VB中的分类属性表控件

作者:徐景周

下载实例代码(http://www.csdn.net/cnshare/soft/12/12322.shtm)

如果你见过VB中的分类属性表的话,你一定不会陌生吧!这种属性表不但美观,而且十分简明、易操作。下面有我做的一个类似于这种VB中分类属性表的控件,例图如下:

基本构成思想:此控件从ListBox派生,将每一行列表,填充为三列显示。其中第一列为分类显示的位图所需,第二列为不能编辑的属性名,第三列为可编辑的按钮、下拉框、编辑框等。第一列做更换显示位图及展开或收缩其下相关条目使用;第二列显示创建时的固定属性名;第三列可根据创建时指定的创建类型,来决定在其中该创建何种控件(按钮、下拉框、编辑框等)。具体实现方法可参看下载示例中的源码。

下面我来说说如何在你的工程文件中使用它们:

1、将示例工程中的二个位图:Expand.bmp和UnExpand.bmp复制到你的工程资源res目录下,导入它们相应命名为:IDB_PROPERTY_EXPAND和IDB_PROPERTY_UNEXPAND。

2、将示例工程中的控件文件:PropertyList.cpp和PropertyList.h复制到你的工程中,并导入它们。

3、在你的工程文件中相关对话框中新建一ListBox控件,并创建一成员变量m_cList,在头文件中将其成员变量的派生类从CListBox改为CPropertyList。

4、在上述对话框头文件中加入#include “PropertyList.h”,在该类中定义变量如下:

CPropertyList* m_pList; //VB属性表控件

CPropertyItem* m_pClassName; //公用属性分类名称

CPropertyItem* m_pName; //名称

5、在上述该对话框类的初始化对话框OnInitDialog()中,创建其内容,如下:

//初始化VB属性表控件

m_pList = &m_cList;

//公用属性,jignzhou xu

m_pClassName = new CPropertyItem("公用属性","",PIT_EDIT,"",TRUE,TRUE,0);

m_pName = new CPropertyItem("名称","",PIT_EDIT,"",FALSE,FALSE,0);

6、在上述对话框类中的OnDestroy中,删除创建的属性条目,如下:

delete m_pClassName;

delete m_pName;

7、剩下,你就可以从其创建的变量中获取或设置相应值了,如下:

//赋值给属性表相应条目

m_pName->m_curValue=pGraph->GetNodeName();

//从属性表相应条目中获取值

pGraph->NodeName = m_pName->m_curValue

其中,具体实现方法可在下载后示例源码后,参看既可。

联系方式:

地址:陕西省西安市劳动路2号院六单元

邮编:710082

作者EMAIL:jingzhou_xu@163.net

未来工作室(Future Studio)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航