CTreeCtrl确定路径问题? 想用CTreeCtrl实现一个浏览FTP服务器路径的功能,不知道用什么方法可以记录下当前选中项的路径,只知道用GetItemText可以获得当前选中项的内容,如果一直连接字符串记录路径的话,比如当前记录的路径为:\ABC\123\QWE,如果此时单击与123同级的目录,就无法记录路径了,请问有什么好办法吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 有,读它的父节点GetParentItem,循环一直读 方法:得到父节点路径 CString GetTreePath(HTREEITEM &hItemSelect,CTreeCtrl &ctrl){ CString strRet;//返回路径 while(hItemSelect ) { CString strItemText=ctrl.GetItemText(hItemSelect);//得到本节点的文本 strRet +=strItemText; HTREEITEM hParentItem=ctrl.GetParentItem(hItemSelect);//得到父节点 hItemSelect=hParentItem;//替换节点 } return strRet;} HTREEITEM hRoot; CString strFullPath; CString strItem; HTREEITEM hSelItem = GetSelectedItem();/*得到当前选定节点句柄*/ hRoot = hSelItem; while( (hRoot = GetParentItem(hRoot)) != NULL) { strItem = GetItemText(hRoot); if(!strFullPath.Empty()) strFullPath +="\\"; strFullPath += strItem; } return strFullPath; 请问这三句JAVA如何转换成VC代码?不明白是什么意思? 源代码 动态分配空间 在和CDialogBar和相关联的对话框中按钮用类变量不起作用,请高手指教。 高分救急!!! 已有自定义格式的图片文件,如何将其转化成点阵格式? .dll和.ocx这两个有什么区别和联系呢? 怎么用dao打开access2002数据库? 求助有关进程间通信的问题!!! 关于免注册调用问题 如何修改主对话框里的变量 关于shellexecute函数的使用问题!
CString GetTreePath(HTREEITEM &hItemSelect,CTreeCtrl &ctrl)
{
CString strRet;//返回路径
while(hItemSelect )
{
CString strItemText=ctrl.GetItemText(hItemSelect);//得到本节点的文本
strRet +=strItemText;
HTREEITEM hParentItem=ctrl.GetParentItem(hItemSelect);//得到父节点
hItemSelect=hParentItem;//替换节点
}
return strRet;
}
CString strFullPath;
CString strItem;
HTREEITEM hSelItem = GetSelectedItem();/*得到当前选定节点句柄*/ hRoot = hSelItem; while( (hRoot = GetParentItem(hRoot)) != NULL)
{
strItem = GetItemText(hRoot);
if(!strFullPath.Empty())
strFullPath +="\\";
strFullPath += strItem;
}
return strFullPath;