Jenis Kontrol TreeItem

Topik ini menyediakan informasi tentang dukungan Microsoft UI Automation untuk jenis kontrol TreeItem.

Jenis kontrol TreeItem mewakili simpul dalam kontainer pohon. Setiap simpul mungkin berisi simpul lain, yang disebut simpul anak. Simpul induk, atau simpul yang berisi simpul anak, dapat ditampilkan sebagai diperluas atau diciutkan.

Bagian berikut menentukan struktur pohon, properti, pola kontrol, dan peristiwa Automation UI yang diperlukan untuk jenis kontrol TreeItem. Persyaratan Automasi UI berlaku untuk semua kontrol item pohon tempat kerangka kerja/platform UI mengintegrasikan dukungan Automation UI untuk jenis kontrol dan pola kontrol.

Topik ini berisi bagian berikut.

Struktur Pohon Umum

Tabel berikut ini menggambarkan kontrol umum dan tampilan konten pohon Automation UI yang berkaitan dengan kontrol item pohon dan menjelaskan apa yang dapat dimuat dalam setiap tampilan. Untuk informasi selengkapnya tentang pohon Automation UI, lihat Gambaran Umum Pohon Automasi UI .

Tampilan Kontrol Tampilan Isi
  • TreeItem
    • Kotak Centang (0 atau 1)
    • Gambar (0 atau 1)
    • Tombol (0 atau 1)
    • TreeItem (0 atau lebih)
  • TreeItem
    • TreeItem (0 atau lebih)

 

Kontrol item pohon dapat memiliki nol atau lebih anak item pohon dalam tampilan konten pohon Automation UI. Jika kontrol item pohon memiliki fungsionalitas di luar apa yang diekspos dalam pola kontrol yang tercantum di bawah ini, kontrol harus didasarkan pada jenis kontrol DataItem.

Item pohon yang diciutkan tidak muncul dalam tampilan kontrol atau tampilan konten hingga item menjadi diperluas dan terlihat (atau dapat digulir ke tampilan).

Tampilan kontrol dapat berisi detail tambahan untuk kontrol, termasuk gambar atau tombol terkait. Misalnya, item dalam tampilan kerangka mungkin berisi gambar serta tombol untuk memperluas atau menciutkan kerangka. Objek detail ini tidak muncul dalam tampilan konten karena informasi sudah diwakili oleh item pohon induk.

Item pohon yang digulir dari layar muncul di tampilan kontrol dan konten pohon Automation UI dan harus memiliki properti IUIAutomationElement::CurrentIsOffscreen (atau CachedIsOffscreen) diatur ke TRUE.

Properti yang Relevan

Tabel berikut mencantumkan properti Automation UI yang nilai atau definisinya sangat relevan dengan jenis kontrol TreeItem. Untuk informasi selengkapnya tentang properti Automation UI, lihat Mengambil Properti dari Elemen Automation UI.

Properti Automasi UI Nilai Catatan
UIA_AutomationIdPropertyId Lihat catatan. Nilai properti ini harus unik di antara semua elemen serekan dalam tampilan mentah pohon Automation UI.
UIA_BoundingRectanglePropertyId Lihat catatan. Persegi panjang terluar yang berisi seluruh kontrol.
UIA_ClickablePointPropertyId Lihat catatan. Properti ini harus mengembalikan lokasi yang menyebabkan item pohon mengubah status pilihan atau menjadi fokus.
UIA_ControlTypePropertyId TreeItem Nilai ini sama untuk semua kerangka kerja UI.
UIA_IsContentElementPropertyId TRUE Kontrol item pohon selalu disertakan dalam tampilan konten pohon Automation UI.
UIA_IsControlElementPropertyId TRUE Kontrol item pohon selalu disertakan dalam tampilan kontrol pohon Automation UI.
UIA_IsKeyboardFocusablePropertyId Lihat catatan. Jika kontrol dapat menerima fokus keyboard, kontrol harus mendukung properti ini.
UIA_IsOffscreenPropertyId Lihat catatan. Properti ini menunjukkan apakah kontrol item pohon digulir dari layar.
UIA_ItemStatusPropertyId Lihat catatan. Jika kontrol berisi status yang sedang diperbarui secara dinamis, properti ini harus didukung sehingga teknologi bantuan dapat menerima pembaruan saat status elemen berubah.
UIA_ItemTypePropertyId Lihat catatan. Jika kontrol item pohon menggunakan ikon visual untuk menunjukkan bahwa adalah tipe item tertentu, properti ini harus didukung dan harus menunjukkan jenis item.
UIA_LabeledByPropertyId NULL Kontrol item pohon adalah pelabelan mandiri.
UIA_LocalizedControlTypePropertyId Lihat catatan. String yang dilokalkan sesuai dengan jenis kontrol TreeItem. Nilai defaultnya adalah "item pohon" untuk en-US atau Inggris (Amerika Serikat).
UIA_NamePropertyId Lihat catatan. Properti ini mengekspos teks yang ditampilkan untuk setiap kontrol item pohon.

 

Pola Kontrol yang Diperlukan

Tabel berikut mencantumkan pola kontrol Automation UI yang diperlukan untuk didukung oleh semua kontrol item pohon. Untuk informasi selengkapnya tentang pola kontrol, lihat Gambaran Umum Pola Kontrol Automasi UI .

Properti Pola/Pola Kontrol Dukungan/Nilai Catatan
IExpandCollapseProvider Diperlukan Semua item pohon harus mendukung pola kontrol ExpandCollapse karena semua item dapat diperluas atau diciutkan.
ExpandCollapseState Simpul Diperluas, Diciutkan, atau Daun Item pohon adalah simpul daun ketika tidak diperluas atau diciutkan.
IInvokeProvider Tergantung Terapkan pola kontrol Panggil jika item pohon dapat melakukan perintah.
IScrollItemProvider Tergantung Terapkan pola kontrol ScrollItem jika kontainer pohon mendukung pola kontrol Gulir.
ISelectionItemProvider Tergantung Terapkan pola kontrol SelectionItem jika memungkinkan untuk memiliki pilihan aktif yang dipertahankan saat pengguna kembali ke kontainer pohon.
SelectionContainer Diperlukan Properti ini mengekspos kontainer yang sama untuk semua item dalam kontainer.

 

Peristiwa yang Diperlukan

Tabel berikut mencantumkan peristiwa Automasi UI yang diperlukan kontrol item pohon untuk didukung. Untuk informasi selengkapnya tentang peristiwa, lihat Gambaran Umum Peristiwa Automasi UI .

Peristiwa Automasi UI Catatan
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId peristiwa yang diubah properti.
UIA_ExpandCollapseExpandCollapseStatePropertyId peristiwa yang diubah properti.
UIA_Invoke_InvokedEventId Jika kontrol mendukung pola kontrol Invoke, kontrol harus mendukung peristiwa ini.
UIA_IsEnabledPropertyId peristiwa yang diubah properti. Jika kontrol mendukung propertiIsEnabled, kontrol harus mendukung peristiwa ini.
UIA_IsOffscreenPropertyId peristiwa yang diubah properti. Jika kontrol mendukung propertiIsOffscreen, kontrol harus mendukung peristiwa ini.
UIA_ItemStatusPropertyId peristiwa yang diubah properti. Jika kontrol mendukung propertiItemStatus, kontrol harus mendukung peristiwa ini.
UIA_MultipleViewCurrentViewPropertyId peristiwa yang diubah properti. Jika kontrol mendukung pola kontrol MultipleView, kontrol tersebut harus mendukung peristiwa ini.
UIA_NamePropertyId peristiwa yang diubah properti.
UIA_SelectionItem_ElementAddedToSelectionEventId Jika kontrol mendukung pola kontrol SelectionItem, kontrol harus mendukung peristiwa ini.
UIA_SelectionItem_ElementRemovedFromSelectionEventId Jika kontrol mendukung pola kontrol SelectionItem, kontrol harus mendukung peristiwa ini.
UIA_SelectionItem_ElementSelectedEventId Jika kontrol mendukung pola kontrol SelectionItem, kontrol harus mendukung peristiwa ini.
UIA_StructureChangedEventId
UIA_ToggleToggleStatePropertyId peristiwa yang diubah properti. Jika kontrol mendukung pola kontrol Toggle, kontrol harus mendukung peristiwa ini.
UIA_ValueValuePropertyId peristiwa yang diubah properti. Jika kontrol mendukung pola kontrol Nilai, kontrol harus mendukung peristiwa ini.

 

Komentar

Jika item pohon memiliki subelemen selain simpul kerangka anak, penyedia harus menangani informasi objek anak dengan hati-hati dan jelas. Dalam Automasi UI, struktur pohon ditangani oleh hierarki pohon itu sendiri. Dengan memiliki satu atau beberapa anak non-node kerangka, perbedaan antara mereka dan node kerangka anak yang sebenarnya menjadi sangat ambigu.

Konseptual

Gambaran Umum Tipe Kontrol Automasi UI

Gambaran Umum Automasi UI