打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
VC轻松实现CTreeCtrl控件双击响应

VC轻松实现CTreeCtrl控件双击响应

2008-11-14 10:09:49 阅读(143) 发表评论

  ClassWizard为CTreeCtrl(树控件)添加的NM_DBLCLK(双击)消息的响应函数中带有一个NMHDR * 型指针形参:

双击代码全选
1
OnDblClkTree(NMHDR* pNMHDR, LRESULT* pResult)

  这个陌生的指针类型常使初用树控件的编程者陷入迷茫之中。实际上我们完全不理会它,也可以实现树控件的双击响应,即在OnDblClkTree( )函数中调用树控件的成员函数CTreeCtrl::GetSelectedItem( )以获取树控件的子项句柄HTREEITEM,得到此句柄后,我们便可用下列成员函数获取子项各种有用信息:

  CTreeCtrl::GetItemData( )、

  CTreeCtrl::GetItemHeight( )、

  CTreeCtrl::GetItemImage( )、

  CTreeCtrl::GetItemRect( )、

  CTreeCtrl::GetItemState( )、

  CTreeCtrl::GetItemText( )。

  例程运行结果如下图所示:

  示例代码如下:

双击代码全选
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
class CTreeCtrlDlg : public CDialog
{
…………
public:
HTREEITEM m_hTreeItem;
CImageList m_ImgLst;
// Dialog Data
//{{AFX_DATA(CTreeCtrlDlg)
enum { IDD = IDD_TREECTRL_DIALOG };
CTreeCtrl m_wndTree;//与对话框中树控件相关联
//}}AFX_DATA
// Implementation
protected:
afx_msg void OnDblClkTree(NMHDR* pNMHDR, LRESULT* pResult);
…………
};
void CTreeCtrlDlg::OnDblClkTree(NMHDR* pNMHDR, LRESULT* pResult)
{
m_hTreeItem = m_wndTree.GetSelectedItem();
//以GetItemText()函数为例:
CString S1 = m_wndTree.GetItemText(m_hTreeItem);
AfxMessageBox("You have selected "+S1);
*pResult = 0;
}

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
【材料整理】VC 树形控件 例子及相关知识
树形控件CTreeCtrl的使用详解
用VC++构建树视图控件
vc 控件 自绘
MFC树形控件(CTreeCtrl)用法(下)
MFC 树形控件CTreeCtrl显示文件路径及文件
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服