CTreeCtrl 使某個節點被選中

2021-06-02 16:44:57 字數 978 閱讀 2418

一、建立樹形控制項

m_operatelist.create(ws_visible | ws_tabstop | ws_child | ws_border

| tvs_hasbuttons | tvs_linesatroot | tvs_haslines

| tvs_disabledragdrop|tvs_trackselect|tvs_showselalways,

crect(15, 45, 165,390), this, idc_tree2);

tvs_showselalways這個屬性不可少。

二、    

1、針對沒有父節點的樹  

int m_count=m_operatelist.getcount();

htreeitem   hroot=m_operatelist.getrootitem(); //獲取父節點

int   ncount=m_operatelist.getcount(); 

int   nnum=0; 

cstring str;

while(nnum         

hroot=m_operatelist.getnextitem(hroot,tvgn_next); 

nnum++; 

} 2、有乙個父節點,遍歷子節點

htreeitem   hroot=m_operatelist.getrootitem(); 

htreeitem   hchilditem = m_operatelist.getchilditem(hroot);     

int   ncount=m_operatelist.getcount(); 

int   nnum=0; 

cstring str;

while(nnum

hchilditem=m_operatelist.getnextitem(hchilditem,tvgn_next); 

nnum++; 

CTreeCtrl 收起某個節點並判斷是否已收起

框架 mfc 需求 收起某個節點,然後判斷改節點是否已收起 問題 收起節點後判斷節點是否收起無效 m treedev.expand m htreeitemlowlevel,tve collapse uint nstate m treedev.getitemstate m htreeitemlowle...

CTreeCtrl 節點支援拖拽功能

1 首先,從ctreectrl派生乙個類cxtreectrl。2 此類需處理以下問題 a 基本拖動實現 b 處理無意拖動 c 能處理拖動過程中滾動問題 d 拖動過程中節點會智慧型展開。具體實現辦法 a 基本拖動實現 當我們要拖動乙個專案時,樹型檢視控制項會給它的父視窗傳送tvn begindrag通...

CTreeCtrl 節點擊擇問題

一 問題說明 樹形控制項,單擊某個節點彈出相應的對話方塊 二 問題處理 起先使用了ctreectrl的onselchangedoperate這個事件,實際操作中出現了問題 二次單擊時對話方塊不能顯示,上網查詢資料,才明白二次單擊並不能觸發onselchangedoperate事件 所以最後選擇了on...