说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

如何获得CTreeCtrl中ITEM的类型

编辑:说三道四文库 发布时间:2018-02-25 04:15
HTML文档下载 WORD文档下载 PDF文档下载
    在CTreeCtrl中,ITEM有时是Checkbox,有时RadioButton,现在已经有了一个CTreeCtrl对象,如何判断其中ITEM的类型?
可以参考下面的Create。
应该是可以获取Style的方式判断的。
网址:
http://www.kaifa6.com/v/mfcshouce/Class/CTreeCtrl_Create.htm
内容如下:
CTreeCtrl::Create

BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );

返回值:
如果初始化成功则返回非零值;否则返回0。

参数: dwStyle 指定tree view控件的风格。可以对这个控件使用tree view控件风格的任意组合。  
rect 指定tree view控件的尺寸和位置。此参数可以是一个CRect对象或一个RECT结构。  
pParentWnd 指定tree view控件的父窗口,通常是一个CDialog。它不能是NULL。  
nID 指定tree view控件的ID。  

说明:
构造一个CTreeCtrl要分两步。首先调用构造函数,然后调用Create来创建这个tree view控件并将它与该CTeeCtrl对象连接。
下面的风格可以应用到一个tree view控件: · TVS_HASLINES tree view控件的子项与它们的父项之间用线连接。  
· TVS_LINESATROOT tree view控件用线连接子项和根项。  
· TVS_HASBUTTONS tree view在每一个父项的左边添加一个按钮。  
· TVS_EDITLABELS tree view控件允许用户编辑tree view项的标签。  
· TVS_SHOWSELALWAYS 当tree view失去焦点时,使被选择的项仍然保持被选择。  
· TVS_DISABLEDRAGDROP 该tree view控件被禁止发送。  
· TVN_BEGINDRAG 通知消息。  
· TVS_NOTOOLTIPS tree view控件使用工具提示。  
· TVS_SINGLEEXPAND 当使用这个风格时,改变在tree view中的选择将导致正被选择的项展开,而没有被选择的项收缩。如果用鼠标单击被选择的项,并且该项是关闭的,则该项就会展开。如果该被选择的项被单击时是打开的,则它就会收缩。 
CTreeCtrl.InsertItem()函数里面出现了2中不同类型?
如果是2种不同类型就比较麻烦。
如果这两种类型是在不同子节点,可以通过GetTreeItemLevel()获取节点层,然后通过
wParam = m_putree.GetItemData(parentItem);
取出里面的类型
通过不同节点对应的类型,进行强制转换。
    我的意思是,一个程序(A)界面上有一个CTreeCtrl控件,另一个程序需要遍历程序A界面上的CTreeCtrl空间,并判断控件中ITEM的类型。
您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知

见此回复三日内无回应
我们将强制结帖
相关规定详见界面界面版关于版主结帖工作的具体办法
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘