我开始用的方法是,再OnNotify里面通过消息判断
if(id==0x2020 && code==NM_CLICK)
{
CTreeCtrl *pTree=NULL;
HTREEITEM hItem;
CString strText;
NMTREEVIEW *pTreeItem;
pTree=(CTreeCtrl*)GetDlgItem(0x2020);
if(pTree->GetSelectedItem()!=NULL)
{
strText=pTree->GetItemText(pTree->GetSelectedItem());
}
}
发现,当点击某一项的时候GetSelectedItem不能获取hItem,必须还要点击一下其他项或者其他地方的时候才能够获取到,我想在一点击的时候就能获取,我该怎么做???
高手指点!
后来改成这样也不行!!!
CString strText;
NMTREEVIEW *pTreeItem;
pTreeItem=(NMTREEVIEW*)lParam;
pTree=(CTreeCtrl*)GetDlgItem(0x2020);
if(pTreeItem->itemNew.hItem!=NULL)
{
strText=pTree->GetItemText(pTreeItem->itemNew.hItem);
}
pTree->GetItem(&pTreeItem->itemNew);
strText.Format("%s",pTreeItem->itemNew.pszText);
这样做获取的文本不正确
该怎么做?????????????????????
高手指点!
if(id==0x2020 && code==NM_CLICK)
{
CTreeCtrl *pTree=NULL;
HTREEITEM hItem;
CString strText;
NMTREEVIEW *pTreeItem;
pTree=(CTreeCtrl*)GetDlgItem(0x2020);
if(pTree->GetSelectedItem()!=NULL)
{
strText=pTree->GetItemText(pTree->GetSelectedItem());
}
}
发现,当点击某一项的时候GetSelectedItem不能获取hItem,必须还要点击一下其他项或者其他地方的时候才能够获取到,我想在一点击的时候就能获取,我该怎么做???
高手指点!
后来改成这样也不行!!!
CString strText;
NMTREEVIEW *pTreeItem;
pTreeItem=(NMTREEVIEW*)lParam;
pTree=(CTreeCtrl*)GetDlgItem(0x2020);
if(pTreeItem->itemNew.hItem!=NULL)
{
strText=pTree->GetItemText(pTreeItem->itemNew.hItem);
}
pTree->GetItem(&pTreeItem->itemNew);
strText.Format("%s",pTreeItem->itemNew.pszText);
这样做获取的文本不正确
该怎么做?????????????????????
高手指点!
解决方案 »
- MFC中分割视图切换成普通视图后不显示,需要移动窗口才显示普通视图
- /md /mt msdn的解析探讨
- 【求助】我在调试程序的时候,在程序关闭时,有错误框闪过就消失了,怎么让这个错误框显示出来
- 图像重叠显示时的刷新闪动问题
- 求助:如何一次打开两个不同的文档??
- 如何从cstring中读取某个字符?
- 文本输入框如何既可显示字符串又可显示Double
- 在串口编程中,为什么一条命令 我分四次收而WaitCommEvent()只给我三个EV_RXCHAR事件(急!在线等待)
- 怎样作出XP风格的平面菜单!!!急救!!!
- 非模态对话框中创建listControl
- 实现一个cedit贴图的问题
- 切分视图运行时报错!!!在线等!!!!!!!!
报错!
error C2065: 'TVN_ITEMCHANGE' : undeclared identifier
再msdn上也查不到这个消息!!请指点!!!