Tree-View 控制項擴充樣式

本節列出建立樹狀檢視控制項時所使用的擴充樣式。 擴充樣式的值是這些樣式的位元組合。

常數 描述
TVS_EX_AUTOHSCROLL
Windows Vista。 根據滑鼠位置移除水準捲軸和自動捲動。
TVS_EX_DIMMEDCHECKBOXES
Windows Vista。 在指定專案最左邊新增核取方塊,其中包含暗灰色核取記號的圖示,這表示已選取節點,因為已選取其父系。 除了 2 個一般核取方塊狀態之外,這包括暗灰色的核取方塊狀態。 請勿與 TVS_CHECKBOXES 樣式同時使用。 請參閱下方注意事項。
TVS_EX_DOUBLEBUFFER
Windows Vista。 指定清除或填滿背景的方式。
TVS_EX_DRAWIMAGEASYNC
Windows Vista。 擷取行事曆格線資訊。
TVS_EX_EXCLUSIONCHECKBOXES
Windows Vista。 在包含紅色 X 之指定專案最左邊加入核取方塊圖示。這包括除了 2 個一般核取方塊狀態之外,還包含排除核取方塊狀態。 請勿與 TVS_CHECKBOXES 樣式同時使用。 請參閱下方注意事項。
TVS_EX_FADEINOUTEXPANDOS
Windows Vista。 當滑鼠離開或進入停留在控制項上方的狀態時,淡入或淡出展開按鈕。
TVS_EX_MULTISELECT
不支援。 請勿使用。
TVS_EX_NOINDENTSTATE
Windows Vista。 請勿縮排展開按鈕的樹狀檢視。
TVS_EX_NOSINGLECOLLAPSE
Windows Vista適用于內部用途;不建議在應用程式中使用。 除非與新選取專案具有相同的父代,否則請勿折迭先前選取的樹狀檢視專案。 此樣式必須與 TVS_SINGLEEXPAND 樣式搭配使用。
注意: Comctl32.dll 的未來版本可能不支援此樣式。 此外,此樣式並未定義于 commctrl.h 中。 將下列定義新增至應用程式的來源檔案,以使用此樣式: #define TVS_EX_NOSINGLECOLLAPSE 0x0001
TVS_EX_PARTIALCHECKBOXES
Windows Vista。 將核取方塊圖示新增至位於中央方塊之指定專案最左邊的核取方塊圖示,這表示已部分選取節點。 除了 2 個一般核取方塊狀態之外,這包括部分核取方塊狀態。 請勿與 TVS_CHECKBOXES 樣式同時使用。 請參閱下方注意事項。
TVS_EX_RICHTOOLTIP
Windows Vista。 允許樹狀檢視中的豐富工具提示, (使用圖示和文字) 自訂繪製。

使用擴充核取方塊樣式的注意事項

樹狀檢視控制項對於核取方塊樣式具有非常特定的行為。 啟用特定樣式或 'EX' 樣式組合時,控制項會保持其生命週期結尾 (這表示您無法在樹狀檢視控制項的存留期間修改第一個核取方塊樣式) 。

若要建立具有任何擴充核取方塊樣式的樹狀檢視控制項,您一開始必須建立控制項視窗,而不使用 TVS_CHECKBOXES 樣式,並在建立之後新增 (,方法是傳送 TVM_SETEXTENDEDSTYLE 訊息或使用 TreeView_SetExtendedStyle 宏,以) 選擇的擴充核取方塊樣式。 擴充的核取方塊樣式可以是 TVS_EX_DIMMEDCHECKBOXESTVS_EX_EXCLUSIONCHECKBOXESTVS_EX_PARTIALCHECKBOXES 樣式的任何 OR 組合。

新的樹狀檢視控制項會提供 2 個正常核取方塊狀態, (核取和未核取的) 加上 1 到 3 個額外的狀態, (所選擴充樣式) 的功能。 一般狀態一律會編碼為0x1000和0x2000,而任何其他狀態都會以下一個值編碼 (0x3000、0x4000 0x5000) 。 使用 TVIS_STATEIMAGEMASK 常數 (0xF000) 做為遮罩,以取得或設定這些狀態來回 傳 TVITEM 結構。

規格需求

需求
標頭
CommCtrl.h