CTreeCtrl 和 CListCtrl 的使用方法

来源:互联网 发布:好用的音响 知乎 编辑:程序博客网 时间:2024/04/29 10:02

CTreeCtrl的使用:

CImageList m_ImageList;

CTreeCtrl memTree;

 

CListCtrl meetingTree;

 

/*加载位图*/
 CBitmap bitmap;
 bitmap.LoadBitmap(IDB_BITMAP_ICONS);

 /*创建图片列表,并添加位图*/
 m_ImageList.Create(16, 16, ILC_COLOR32 | ILC_MASK, 22, 5);
 m_ImageList.Add(&bitmap, RGB(192,192,192));
 bitmap.DeleteObject();


 // 可浮动,可自动隐藏,可调整大小,但不能关闭
 DWORD dwStyle = AFX_CBRS_FLOAT | AFX_CBRS_AUTOHIDE | AFX_CBRS_RESIZE;

 //创建成员列表
 CRect rectDummy(0, 0, 0, 0);

#pragma region CREATEMEM
 const DWORD dwMemStyle = WS_CHILD | WS_VISIBLE | TVS_HASLINES | TVS_LINESATROOT | TVS_HASBUTTONS;
 memTree.Create(dwMemStyle,rectDummy, this, 1200);
 memTree.SetImageList(&m_ImageList, TVSIL_NORMAL); //设置一个图像列表,使CtreeCtrl的节点显示不同的图标  LVSIL_SMALL
 //memTree.SetBkColor(RGB(0,250,255));//设置m_mytree的背景色

 //创建节点
 //父节点
 HTREEITEM root0=memTree.InsertItem(L"华成封",2,3,TVI_ROOT,TVI_LAST);
 HTREEITEM root1=memTree.InsertItem(L"华思创",2,4,TVI_ROOT,TVI_LAST);
 //一层子节点
 HTREEITEM sub_son00=memTree.InsertItem(L"市场部",0,5,root0,TVI_LAST);
 HTREEITEM sub_son01=memTree.InsertItem(L"外交部",0,6,root0,TVI_LAST);
 HTREEITEM sub_son10=memTree.InsertItem(L"研发部",0,5,root1,TVI_LAST);
 //二层孙子节点
 HTREEITEM sub_m_son000=memTree.InsertItem(L"num1",0,7,sub_son00,TVI_LAST);
 HTREEITEM sub_m_son001=memTree.InsertItem(L"num2",0,8,sub_son00,TVI_LAST);
 HTREEITEM sub_m_son002=memTree.InsertItem(L"num3",0,9,sub_son00,TVI_LAST);
 HTREEITEM sub_m_son003=memTree.InsertItem(L"num4",0,10,sub_son00,TVI_LAST);

 HTREEITEM sub_m_son100=memTree.InsertItem(L"a明",0,4,sub_son10,TVI_LAST);
 HTREEITEM sub_m_son101=memTree.InsertItem(L"be",0,3,sub_son10,TVI_LAST);
 HTREEITEM sub_m_son102=memTree.InsertItem(L"cb",0,2,sub_son10,TVI_LAST);
 HTREEITEM sub_m_son103=memTree.InsertItem(L"ed",0,1,sub_son10,TVI_LAST);

 

 

 

#pragma region MEETING

 //会议列表
 const DWORD dwMeetingStyle = WS_CHILD |  WS_VISIBLE |TVS_HASLINES | TVS_LINESATROOT | TVS_HASBUTTONS;
 meetingTree.Create(dwMeetingStyle,rectDummy, &bar, 1201);
 /*设置会议列表风格*/
 meetingTree.InsertColumn(0, L"");
 meetingTree.InsertColumn(1, L"", LVCFMT_LEFT, 0);
 //meetingTree.SetColumnWidth(0, 50);

 /*设置与会人员列表风格*/
 meetingTree.SetExtendedStyle(LVS_EX_SUBITEMIMAGES);
 meetingTree.InsertColumn(0, L"用户名");

 int nIndex = meetingTree.InsertItem(0xFFFF, L"临时会议1", ICON_MEETING);
 meetingTree.InsertItem(0xFFFF, L"临时会议2", ICON_MEETING);
 meetingTree.InsertItem(0xFFFF, L"临时会议3", ICON_MEETING);
 meetingTree.InsertItem(0xFFFF, L"临时会议4", ICON_MEETING);
 meetingTree.InsertItem(0xFFFF, L"临时会议5", ICON_MEETING);
 meetingTree.InsertItem(0xFFFF, L"中华人民共和国共青团组织第一次协助热电厂人民重建家园", ICON_MEETING);

 meetingTree.SetImageList(&m_ImageList, LVSIL_SMALL);

 bNameValid = strTemp.LoadString(IDS_MEETINGTREE);
 ASSERT(bNameValid);
 pOutlookBar->AddControl(&meetingTree, strTemp, 3, TRUE, dwStyle);
#pragma endregion MEETING

原创粉丝点击