| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1279 人关注过本帖
标题:树视图里怎么知道我双击的节点是哪个节点?
只看楼主 加入收藏
cc3213252
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2007-1-16
收藏
 问题点数:0 回复次数:2 
树视图里怎么知道我双击的节点是哪个节点?

我用CLeftView方式创建了一个树视图,并在初始化时用下列语句创建树

HTREEITEM it;
TV_INSERTSTRUCT itt;
it=GetTreeCtrl().InsertItem("中国网通");
itt.hParent=it;
itt.hInsertAfter=TVI_LAST;
itt.item.pszText="201线路";
itt.item.mask=TVIF_TEXT;
GetTreeCtrl().InsertItem(&itt);
itt.item.pszText="202线路";
GetTreeCtrl().InsertItem(&itt);

然后我在CLeftView类中增加双击消息,想通过双击消息得到我双击节点的文字(中国网通,201线路或202线路等)

void CLeftView::OnDblclk(NMHDR* pNMHDR, LRESULT* pResult)
{

NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
HTREEITEM hItem = pNMTreeView->itemNew.hItem;
CString m_curFirstLevelName = GetTreeCtrl().GetItemText(hItem);
MessageBox(m_curFirstLevelName);
*pResult = 0;
}

为什么我双击弹出的消息框没有任何文字呢?郁闷,谁能说说可能是怎么回事吗?

[此贴子已经被作者于2007-11-19 15:00:36编辑过]

搜索更多相关主题的帖子: 节点 视图 
2007-11-17 16:00
cc3213252
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2007-1-16
收藏
得分:0 
回复:(cc3213252)树视图里如何得到当前选中节点文字...
没有人知道吗?或者不用我这样做,怎么样才能知道我双击的节点是哪个节点呢?
2007-11-19 14:57
赵博闻
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2007-9-20
收藏
得分:0 
你这样做应该是的不到想要的效果的
你的树是自行创建的信息都在初始化函数中,一旦执行完就消失了,如果你一定要这样做就要动态分配内存,mallco/new把要保留的信息保存在CArray/Map中使用时再调用。但你不觉得这样很麻烦吗。
建议直接拖一个CTreeCtrl控件在你想要它出现的地方。
插入结点:InsertItem
双击时可用:
HTREEITEM hItem;
    hItem = SelectItem();
if(hItem != NULL)
{
    GetItemText.....
}

2008-04-28 10:29
快速回复:树视图里怎么知道我双击的节点是哪个节点?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.057756 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved