MFC 樹控制項CTreeCtrl

2021-08-30 21:49:52 字數 2667 閱讀 2381

常用屬性設定:

屬性

含義

has buttons

true

有展開按鈕

has lines

true

有展開線

lines at root

true

有根節點

常用介面:

介面

功能

獲取應用程式物件指標

載入自定義圖示

cimagelist::create

建立影象列表

cimagelist::add

影象列表追加圖示

ctreectrl::setimagelist

設定圖形狀態列表

ctreectrl::insertitem

插入節點

ctreectrl::selectitem

設定預設選中項

ctreectrl::getselecteditem

獲取選中項

ctreectrl::getitemtext

獲取某項內容

設定屬性  設定線、按鈕

設定集合

setimagelist(cimagelist* list , 正常顯示的巨集)

list準備  create(30,30, 32位色,4,4)

add (hicon)

新增節點

insertitem( 節點名稱,顯示,選中後顯示的圖,父節點)

設定預設節點

selectitem

節點間切換 觸發事件ontvnselchangedtree1

獲取當前項

把ico資源檔案放在專案res資料夾中

2.資源檢視 -> icon -> 新增資源:

3.匯入ico檔案

//載入圖示

hicon icon[3];

1. .h 檔案類中定義圖形列表(cimagelist)物件

cimagelist m_imagelist; //影象列表
2. oninitdialog()函式中完成影象列表的建立、圖示的追加

//影象列表,程式完畢不能釋放, 建立

//30, 30: 的寬度和高度

//ilc_color32:樣式

m_imagelist.create(30, 30, ilc_color32, 3, 3);

//給影象列表新增

for (int i = 0; i < 3; i++)

//樹控制項設定列表

m_treectrl.setimagelist(&m_imagelist, tvsil_normal);

//給樹建立節點

//根節點,父節點,子節點

htreeitem root = m_treectrl.insertitem(text("中國"), 0, 0, null);

htreeitem fathter = m_treectrl.insertitem(text("北京"), 1, 1, root);

htreeitem son = m_treectrl.insertitem(text("海淀"), 2, 2, fathter);

//設定某個節點被選中

m_treectrl.selectitem(fathter);

程式效果圖:

樹控制項常用事件為:tvn_selchanged,當選擇某個節點時,自動觸發此事件。

MFC樹控制項CTreeCtrl

屬性 含義 has buttons true 有展開按鈕 has lines true 有展開線 lines at root true 有根節點 介面 功能 獲取應用程式物件指標 載入自定義圖示 cimagelist create 建立影象列表 cimagelist add 影象列表追加圖示 ctr...

CTreeCtrl控制項

在這裡,你可以獲得以下資訊 1.ctreectrl 樣式及設定 2.擴充套件樣式設定 3.資料插入 ctreectrl控制項 cobject ccmdtarget cwnd ctreectrl 1.ctreectrl 樣式及設定 long lstyle lstyle getwindowlong m ...

MFC學習之CTreeCtrl控制項的使用

樹狀控制項ctreectrl主要用於樹狀結構的功能使用,其中樹狀結構有乙個根接點 root 乙個根接點下可以有多個子接點或者不設定子接點,子接點也可以作為父節點,使其下也包含若干的子接點,總是可以根據接點之間的上下級關係然後設定相應的接點。mtreectrl insertitem 函式為為控制項新增...