共用方式為


公開清單方塊專案Owner-Drawn

應用程式開發人員不需要實作 IAccessible ,即可在具有樣式 LBS_HASSTRINGS 的擁有者繪製清單方塊中公開專案,因為 Microsoft Active Accessibility 會以此樣式公開清單方塊中的專案。 具有 LBS_HASSTRINGS 樣式的擁有者繪製清單方塊中的專案會顯示為文字。 不過,此樣式也會與不會顯示文字的擁有者繪製清單方塊搭配使用,讓清單方塊專案由 Microsoft Active Accessibility 公開。

若要允許 Microsoft Active Accessibility 在未顯示文字的擁有者繪製清單方塊中公開專案:

  • 建立清單方塊時,請使用 LBS_HASSTRINGS 樣式。
  • 建立文字對應專案,以命名或描述清單方塊中的每個專案。
  • 將專案新增至擁有者繪製的清單方塊時,請使用 LB_ADDSTRING 訊息來新增您想要 Microsoft Active Accessibility 公開的文字。 不會顯示此文字,因此不是擁有者繪製資料的一部分。 使用 LB_SETITEMDATA 訊息新增擁有者繪製的專案資料。

使用上述方法時,請注意下列事項:

  • 如果您使用 LBS_SORT 樣式,清單方塊會使用提供的字串排序,而不是 WM_COMPAREITEM 回呼程式。
  • 使用以樣式LBS_OWNERDRAWVARIABLE建立的擁有者繪製變數清單方塊時,請使用全域變數或其他機制來追蹤MEASUREITEMSTRUCTitemData 成員是否有效。 需要全域變數,因為系統會在新增字串之後,但在附加專案資料之前,立即傳送 WM_MEASUREITEM 訊息,此時 itemData 成員無效。
  • 若要變更清單方塊中具有 LBS_HASSTRINGS 樣式的專案字串,請使用LB_DELETESTRING訊息刪除專案,並使用 LB_ADDSTRING 訊息新增字串。