共用方式為


ComboBox 控制件

ComboBox 控制件會顯示預先定義值的下拉式清單,以及使用者可以在其中輸入值的編輯欄位。 若要將這個控制項與字串或整數屬性產生關聯,請在 Control 資料表的 [屬性] 資料行中輸入屬性的名稱,

控件屬性

您可以使用下列屬性搭配此控制件。 若要使用事件變更屬性的值,請將控件訂閱至 EventMapping 數據表中的 ControlEvent,並在 Attribute 數據行中列出屬性的標識符。 在 [事件] 數據行中輸入 ControlEvent 的標識碼。

屬性標識碼 十六進位位 描述
IndirectPropertyName 這是與控件相關聯的間接屬性名稱。 如果已設定 Indirect 屬性位,控制項會顯示或變更具有這個名稱的屬性值。 如果已設定 Indirect 屬性位,這個名稱也是 Control 資料表的 Property 資料行中所列屬性的值,
位置 控件在對話框中的位置。 將控件左角的寬度、高度和座標輸入 控件數據表的 Width、Height、X 和 Y 資料行。 使用 安裝程式單位 長度和距離。
PropertyName 這是與這個控件相關聯的屬性名稱。 如果未設定 Indirect 屬性位,控制項會顯示或變更具有這個名稱的屬性值。 這個屬性是在 Control 資料表的 [屬性] 資料列中指定
PropertyValue 這個控件所顯示或變更之屬性的目前值。 如果未設定 Indirect 屬性位,這是 PropertyName 的值。 如果已設定 Indirect 屬性位,這是 IndirectPropertyName 的值。 如果屬性變更,控件會反映新的值。
文字 若要設定文字字串的字型和字型樣式,請在顯示的字元字串前面加上 {\style} 或 {&style}。 其中 style 是列在 TextStyle 數據表TextStyle 數據行中的標識符。 如果其中兩者都不存在,但 DefaultUIFont 屬性會定義為有效的文字樣式,則會使用該字型。 若要指定使用者可以輸入的字元數,請在任何字型規格後面附加 {n},其中 n 是正整數。
可見 0x00000000 0x00000001
隱藏的控件。 可見控制件。
將這個位包含在 Control 資料表中 Attributes 數據行的位字中,讓控件在建立時顯示或隱藏。
您也可以使用 ControlCondition 資料表來隱藏或顯示控件。
已啟用 0x00000000 0x00000002
處於停用狀態的控制件。 處於啟用狀態的控制件。
將這個位包含在 控件 的 [屬性] 數據行的位字中,以在建立時啟用控件。
您也可以使用 ControlCondition 數據表來啟用或停用控件。
下沉 0x00000000 0x00000004
顯示預設的視覺化樣式。 以沉沒的 3D 外觀顯示控制件。
將這些位包含在 Control 資料表的 [屬性] 資料列中,
間接 0x00000000 0x00000008
控制元件會顯示或變更 Control 資料表的 [屬性] 資料行中屬性的值,。 控件會顯示或變更屬性的值,其標識符列在 Control 數據表的 Property 資料行中。
判斷與這個控件相關聯的屬性是否間接參考。
整數 0x00000000 0x00000010
與控件相關聯的屬性是字串值。 與控件相關聯的屬性是整數值。
將這個位包含在 Control 資料表的 Attributes 數據行的位字,以在建立控件時設定此屬性。
RTLRO 0x00000000 0x00000020
控件中的文字會以從左至右的閱讀順序顯示。 控件中的文字會以從右至左的閱讀順序顯示。
RightAligned 0x00000000 0x00000040
控件中的文字會對齊左邊。 控件中的文字會對齊右邊。
LeftScroll 0x00000000 0x00000080
滾動條位於控件右側。 滾動條位於控件的左側。
BiDi 0x000000E0 針對 RTLRORightAligned和 leftScroll 屬性的組合,設定此值。
已排序的 未設定0x00010000
依字母順序顯示的專案。 listView 資料表 中所指定順序顯示的專案。
控件會查詢 ComboBox 數據表,如果已設定 Sorted 樣式位,則 ComboBox 具有CBS_SORT樣式,並顯示 Ordering 所指定的專案。 如果未設定此樣式位,專案會依字母順序顯示。
ComboList 未設定0x00020000
下拉式方塊與編輯欄位。 具有編輯欄位的下拉式方塊會由靜態文字欄位取代。
UsersLanguage 0x00000000 0x00100000
在資料庫代碼頁中建立的字型。 在用戶的預設 UI 代碼頁中建立的字型。

言論

您可以使用 CreateWindowEx 函式,從 COMBOBOX 類別建立此控件。 它有 CBS_AUTOHSCROLLWS_TABSTOPWS_GROUPWS_CHILD 樣式。 如果 ComboList 位開啟,它也有 CBS_DROPDOWNLIST 樣式,否則其具有 CBS_DROPDOWN 樣式。

輸入的文字長度可以限制,方法是將數位從 0 到 2147483646大括弧放在 [Control] 資料表中 [文字] 字段開頭的大括弧。 例如,如果文字欄位以 {80}開頭,字串的長度會限製為 80 個字元。 如果未在數據表中提供這類限制,或指定了 0,長度會設定為可能的最大長度(2147483646個字元)。 負值或非數值會產生錯誤。

為了與螢幕助讀程式相容,在撰寫具有 ComboBox 控件的對話方塊做為第一個使用中控件時,您必須將屬於編輯欄位的文字欄位設為 [對話框] 表格中的第一個使用中控件,。 由於靜態文字無法取得焦點,因此建立對話框時,編輯字段一開始會有焦點。 這樣做可確保螢幕助讀程序顯示正確的資訊。