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 node dapat memuat node lain, yang disebut node anak. Node induk, atau node yang memuat node anak, dapat ditampilkan sebagai diperluas atau diciutkan.

Bagian berikut menentukan struktur pohon, properti, pola kontrol, dan peristiwa Otomasi UI yang diperlukan untuk jenis kontrol TreeItem . Persyaratan Otomatisasi 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 UI Automation, lihat Ringkasan Pohon UI Automation.

Tampilan Kontrol Tampilan Konten
  • 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 anak item pohon nol atau lebih dalam tampilan konten pohon UI Automation. 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 menjadi diperluas dan terlihat (atau dapat digulir ke tampilan).

Tampilan kontrol dapat memuat rincian tambahan untuk kontrol, termasuk gambar atau tombol terkait. Contohnya, item dalam tampilan kerangka dapat memuat 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 dalam tampilan kontrol dan konten pohon Automation UI dan harus memiliki properti IUIAutomationElement::CurrentIsOffscreen (atau CachedIsOffscreen) yang 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 UI Automation 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, maka 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 ketika status elemen berubah.
UIA_ItemTypePropertyId Lihat catatan. Jika kontrol item pohon menggunakan ikon visual untuk menunjukkan bahwa merupakan 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 English (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 UI Automation.

Pola Kontrol/Properti Pola Dukungan/Nilai Catatan
IExpandCollapseProvider Diperlukan Semua item pohon harus mendukung pola kontrol ExpandCollapse karena semua item dapat diperluas atau diciutkan.
ExpandCollapseState Node Diperluas, Node Diciutkan, atau Node Leaf Item pohon adalah simpul daun saat tidak diperluas atau diciutkan.
IInvokeProvider Bergantung Terapkan pola kontrol Panggil jika item pohon dapat melakukan perintah.
IScrollItemProvider Bergantung Terapkan pola kontrol ScrollItem jika kontainer pohon mendukung pola kontrol Gulir .
ISelectionItemProvider Bergantung 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 ini mencantumkan peristiwa Automasi UI yang diperlukan kontrol item pohon untuk didukung. Untuk informasi selengkapnya tentang peristiwa, lihat Gambaran Umum Peristiwa UI Automation.

Peristiwa UI Automation Catatan
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId peristiwa yang diubah properti.
UIA_ExpandCollapseExpandCollapseStatePropertyId peristiwa yang diubah properti.
UIA_Invoke_InvokedEventId Jika kontrol mendukung pola Kontrol pemanggilan , kontrol harus mendukung peristiwa ini.
UIA_IsEnabledPropertyId peristiwa yang diubah properti. Jika kontrol mendukung properti IsEnabled , kontrol harus mendukung peristiwa ini.
UIA_IsOffscreenPropertyId peristiwa yang diubah properti. Jika kontrol mendukung properti IsOffscreen , kontrol harus mendukung peristiwa ini.
UIA_ItemStatusPropertyId peristiwa yang diubah properti. Jika kontrol mendukung properti ItemStatus , kontrol harus mendukung kejadian ini.
UIA_MultipleViewCurrentViewPropertyId peristiwa yang diubah properti. Jika kontrol mendukung pola kontrol MultipleView , kontrol harus mendukung peristiwa ini.
UIA_NamePropertyId peristiwa yang diubah properti.
UIA_SelectionItem_ElementAddedToSelectionEventId Jika kontrol mendukung pola kontrol SelectionItem , kontrol harus mendukung kejadian ini.
UIA_SelectionItem_ElementRemovedFromSelectionEventId Jika kontrol mendukung pola kontrol SelectionItem , kontrol harus mendukung kejadian ini.
UIA_SelectionItem_ElementSelectedEventId Jika kontrol mendukung pola kontrol SelectionItem , kontrol harus mendukung kejadian ini.
UIA_StructureChangedEventId
UIA_ToggleToggleStatePropertyId peristiwa yang diubah properti. Jika kontrol mendukung pola kontrol Hidupkan/Matikan , kontrol harus mendukung kejadian ini.
UIA_ValueValuePropertyId peristiwa yang diubah properti. Jika kontrol mendukung pola kontrol Nilai , kontrol harus mendukung peristiwa ini.

 

Keterangan

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-simpul kerangka, perbedaan antara mereka dan simpul kerangka anak yang sebenarnya menjadi serius ambigu.

Konseptual

Gambaran Umum Jenis Kontrol UI Automation

Gambaran Umum UI Automation