樹狀目錄控制項父代和子項目

在樹狀目錄控制項中的任何項目 (CTreeCtrl) 可以有子項目,稱為子系項目與其相關聯的清單。項目有一個以上的子項目稱為父項目。子項目會顯示其父項目底下,而且會縮排表示它是屬於父代。沒有父代的項目在階層架構的最上面,稱為根項目。

在任何時候,子項目的父項目清單的狀態可能是展開或摺疊。當展開狀態時,子項目會顯示父項目底下。摺疊,不會顯示子項目。清單會自動切換展開和摺疊狀態之間在使用者按兩下父項目時或如果父代使用 TVS_HASBUTTONS 樣式,當使用者按一下與父項目相關的按鈕。應用程式可以展開或摺疊子項目,藉由使用展開成員函式。

將項目加入至樹狀目錄控制項的藉由呼叫 InsertItem 成員函式。這個函式傳回的控制代碼的 HTREEITEM 型別,可唯一識別項目。當加入項目,您必須指定新項目的父項目的控制代碼。如果您指定 NULLTVI_ROOT 值,而不是父代的項目控制代碼,以 TVINSERTSTRUCT 結構或hParent參數,做為根項目中加入項目。

樹狀目錄控制項會傳送 TVN_ITEMEXPANDING 展開或摺疊子項目的父項目清單時,通知訊息。這個告知會給您的機會,以防止變更或設定父項目的任何子項目清單的狀態而定的屬性。在變更後的狀態清單中,樹狀目錄控制項傳送 TVN_ITEMEXPANDED 通知訊息。

子系項目清單展開時,它是相對於父項目縮排。您可以設定縮排的量,藉由使用 SetIndent 成員函式或擷取所使用的目前數量 GetIndent 成員函式。

請參閱

參考

使用 CTreeCtrl

概念

控制項 (MFC)