共用方式為


使用自訂控制項

您可以使用擁有者繪圖來變更控制項的外觀,並建立超類別或子類別來變更控制項的行為,來自訂標準控制項。 在每個案例中,標準控制項類型的基礎系統程式碼會處理基本控制項函式。 如果您正確地使用這些控制項,則可以存取這些控制項。

以標準控制項為基礎的擁有者繪製控制項會顯示為輔助功能協助工具的標準控制項,並支援 Microsoft Active Accessibility;不過,它有自訂的外觀。 有些應用程式會使用自訂控制項來變更控制項的外觀,但擁有者繪製的控制項是更容易存取的解決方案。 如需如何定義擁有者繪製功能表並公開擁有者繪製控制項的詳細資訊,請參閱 協助工具

建立超級類別或子類別是自訂現有控制項行為的技術。 視控制項的新行為而定,可能需要補充它公開的協助工具資訊。 例如,應用程式可以使用擁有者繪製的控制項,在選取的核取方塊中顯示 X,而不是核取記號,或使用圖片而非單字標記命令按鈕。

使用超級類別或子類別的擁有者繪製控制項時:

  • 提供所有控制項的標籤,即使畫面上看不到標籤亦然。 例如,如果您自訂控制項,讓標準標題看不到 (,則具有圖形臉部的按鈕) 並將標題保留為空白字串,協助工具協助工具就無法取得標題,並使用它來識別控制項。
  • 請確定支援 WM_GETTEXT
  • 請確定支援所有類別特定的訊息。 請務必支援文字擷取訊息,例如 CB_GETLBTEXTLB_GETTEXT。 設定適當的樣式位,例如 CBS_HASSTRINGSLBS_HASSTRINGS,表示控制項支援這些訊息。