ListView 控制項
ListView 控件,顯示值的單一數據行,每個專案旁邊都有圖示。 它可讓使用者從預先決定清單選取屬性的單一字串或整數值。 可能的值會從 ListView 數據表讀取。 您可以將屬性的名稱輸入 Control 資料表的 Property 資料行,讓控件與整數或字串值產生關聯。
ListView 控件永遠不會顯示 Control 數據表的 Text 字段內容。 相反地,此欄位會指定要由控件顯示的文字樣式,並包含螢幕檢閱公用程式所使用的控件描述。 若要設定文字字串的字型和字型樣式,請在顯示字元的字串前面加上 {\style} 或 {&style}。 其中 style 是 TextStyle 數據表之 TextStyle 數據行中列出的標識碼。 如果兩者都不存在,但 DefaultUIFont 屬性會定義為有效的文字樣式,則會使用該字型。 螢幕檢閱公用程式會讀取下列資訊做為控件的描述。 請參閱 輔助功能。
控件屬性
您可以使用下列屬性搭配此控制件。 若要使用事件變更屬性的值,請將控件訂閱至 EventMapping 數據表中的 ControlEvent,並在 [屬性] 資料行中列出屬性的識別碼。 在 [事件] 數據行中輸入 ControlEvent 的標識碼。
屬性標識碼 | 十六進位位 | 描述 |
---|---|---|
IndirectPropertyName | 這是與控件相關聯的間接屬性名稱。 如果已設定 Indirect 屬性位,控制項會顯示或變更具有這個名稱的屬性值。 如果已設定 Indirect 屬性位,這個名稱也是 Control 資料表的 Property 資料行中列出的屬性值。 | |
位置 | 控件在對話框中的位置。 在控件數據表的 Width、Height、X 和 Y 資料行中,輸入控件左角的寬度、高度和座標。 使用 安裝程式單位 的長度和距離。 |
|
PropertyName | 這是與這個控件相關聯的屬性名稱。 如果未設定 Indirect 屬性位,控制項會顯示或變更具有這個名稱的屬性值。 此屬性是在 Control 資料表的 Property 資料行中指定。 | |
PropertyValue | 這個控件所顯示或變更之屬性的目前值。 如果未設定 Indirect 屬性位,這是 PropertyName 的值。 如果已設定 Indirect 屬性位,這是 IndirectPropertyName 的值。 如果屬性變更,控件會反映新的值。 | |
Text | 若要在螢幕助讀程式中顯示文字,請在 [控件] 資料表的 [文字] 資料行中輸入文字。 請參閱 輔助功能。 | |
Visible | 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 | 為 RTLRO、RightAligned 和 LeftScroll 屬性的組合設定此值。 |
排序 | 0x00000000 0x00010000 |
依字母順序顯示的專案。 以 ListView 資料表中指定的順序顯示的專案。 將這個位包含在 Attributes 數據行的位字中,以 ListView 資料表之 Order 資料行所指定的順序顯示專案。 |
FixedSize | 0x00000000 0x00100000 |
縮放圖示影像以符合控件。 裁剪或置中控件中的圖示影像。 將這個位包含在 Control 資料表之 Attributes 數據行的位字中。 |
IconSize | 0x00000000 0x00200000 0x00400000 0x00600000 |
載入第一個影像。 載入前 16x16 影像。 載入前 32x32 影像。 載入前 48x48 映像。 圖示檔案可以包含相同圖示的不同大小影像。 在 Control 資料表的 [屬性] 資料行中包含適當位字的值 如果未設定這些位,安裝程式會忽略 FixedSize 屬性,並延展影像以符合控件矩形。 如果同時設定 IconSize 位和 FixedSize 位,則小於控件的影像置中,且影像大於壓縮以符合的控件。 |
備註
您可以使用 CreateWindowEx 函式,從 WC_LISTVIEW 類別建立此控件。 它具有LVS_REPORT、LVS_NOCOLUMNHEADER、WS_VSCROLL、WS_HSCROLL、LVS_SHAREIMAGELISTS、LVS_SINGLESEL、LVS_SHOWSELALWAYS、WS_BORDER和WS_TABSTOP樣式。 如果排序的樣式位不在上,控件也有 LVS_SORTASCENDING 樣式。
為了與螢幕助讀程式相容,在撰寫具有 ListView 控件的對話做為第一個使用中控件時,您必須將屬於編輯欄位的文字欄位設為 Dialog 資料表中的第一個使用中控制件。 由於靜態文字無法取得焦點,因此在建立對話框時,編輯字段一開始會有焦點,但這樣做可確保螢幕助讀程序顯示正確的資訊。