樹狀目錄控制項標籤編輯
使用者可以直接編輯樹狀控制項中 具有 TVS_EDITLABELS 樣式的專案標籤。 按一下具有焦點的項目標籤,使用者就可以開始進行編輯。 應用程式會使用 EditLabel 成員函式開始編輯。 當編輯開始和取消或完成時,樹狀目錄控制項會傳送通知。 當編輯完成時,您可以視狀況負責更新項目的標籤。
標籤編輯開始時,樹狀目錄控制項會傳送 TVN_BEGINLABELEDIT 通知訊息。 藉由處理這個通知,您可以允許編輯某些標籤並防止編輯其他標籤。 傳回 0 表示允許編輯,傳回非零值表示無法編輯。
當標籤編輯取消或完成時,樹狀目錄控制項會傳送 TVN_ENDLABELEDIT 通知訊息。 lParam 參數是 NMTVDISPINFO 結構的位址 。 專案 成員是 TVITEM 結構,可識別專案並包含編輯過的文字。 在驗證編輯字串後,您可以視狀況負責更新項目的標籤。 如果已取消編輯,則 的 TV_ITEM
pszText 成員為 0。
在標籤編輯期間,通常是為了回應 TVN_BEGINLABELEDIT 通知訊息,您可以使用 GetEditControl 成員函式取得用於標籤編輯 的編輯控制項指標。 您可以呼叫編輯控制項的 SetLimitText 成員函式,以限制使用者可以輸入或子類別編輯控制項的文字數量,以攔截和捨棄無效字元。 不過請注意,只有在 傳送TVN_BEGINLABELEDIT 之後 ,才會顯示編輯控制項。