CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

怎样对CTreeCtrl 进行自动排序

楼主yzs001()2006-07-02 08:06:25 在 VC/MFC / 基础类 提问

怎样对CTreeCtrl   进行自动排序  
  问题点数:20、回复次数:6Top

1 楼hijack(Time timeIsMoney)回复于 2006-07-02 09:09:44 得分 5

CTreeCtrl::SortChildren  
  BOOL   SortChildren(   HTREEITEM   hItem   );  
  Top

2 楼hijack(Time timeIsMoney)回复于 2006-07-02 09:10:43 得分 5

//   Sort   all   of   the   items   in   the   tree   control.  
  pmyTreeCtrl->SortChildren(TVI_ROOT);  
  Top

3 楼yzs001()回复于 2006-07-02 17:27:20 得分 0

不明白呀Top

4 楼yzs001()回复于 2006-07-03 10:35:56 得分 0

高手来呀,我急需!Top

5 楼EddieCai()回复于 2006-07-04 09:37:49 得分 5

如果你只是些想按照字母顺序排序,那么就调用CTreeCtrl的SortChildren方法,此方法的参数是Tree上的某个节点BOOL   SortChildren(HTREEITEM   hItem);   此方法将此节点下的直接子节点(就是说不会遍历进下一层节点)按照字母顺序排序。  
  Top

6 楼EddieCai()回复于 2006-07-04 09:39:37 得分 5

如果你是想自己定义一种排序的规则,可以调用CTreeCtrl的SortChildrenCB,但是需要自己提供一个回调函数来实现这种规则。MSDN上有例子:  
   
  static   int   CALLBACK    
  MyCompareProc(LPARAM   lParam1,   LPARAM   lParam2,   LPARAM   lParamSort)  
  {  
        //   lParamSort   contains   a   pointer   to   the   tree   control.  
        //   The   lParam   of   an   item   is   just   its   handle,    
  //   as   specified   with   <A   HREF="_mfc_ctreectrl.3a3a.setitemdata.htm">SetItemData</A>  
        CTreeCtrl*   pmyTreeCtrl   =   (CTreeCtrl*)   lParamSort;  
        CString         strItem1   =   pmyTreeCtrl->GetItemText((HTREEITEM)   lParam1);  
        CString         strItem2   =   pmyTreeCtrl->GetItemText((HTREEITEM)   lParam2);  
   
        return   strcmp(strItem2,   strItem1);  
  }  
   
        //   The   pointer   to   my   tree   control.  
        extern   CTreeCtrl*   pmyTreeCtrl;  
        TVSORTCB   tvs;  
   
        //   Sort   the   tree   control's   items   using   my  
        //   callback   procedure.  
        tvs.hParent   =   TVI_ROOT;  
        tvs.lpfnCompare   =   MyCompareProc;  
        tvs.lParam   =   (LPARAM)   pmyTreeCtrl;  
   
        pmyTreeCtrl->SortChildrenCB(&tvs);Top

相关问题

关键词

得分解答快速导航

  • 帖主:yzs001
  • hijack
  • hijack
  • EddieCai
  • EddieCai

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo