Gambaran Umum Penyedia UI Automation

Penyedia Microsoft UI Automation adalah objek perangkat lunak yang mengekspos elemen UI aplikasi sehingga aplikasi klien aksesibilitas dapat mengambil informasi tentang elemen dan memanggil fungsionalitasnya. Secara umum, setiap kontrol atau elemen berbeda lainnya dalam UI memiliki penyedia.

Microsoft menyertakan penyedia untuk setiap kontrol standar yang disediakan dengan Microsoft Win32, Formulir Windows, dan Windows Presentation Foundation (WPF). Ini berarti bahwa kontrol standar secara otomatis diekspos ke klien Automation UI; Anda tidak perlu menerapkan antarmuka aksesibilitas apa pun untuk kontrol standar.

Jika aplikasi Anda menyertakan kontrol kustom apa pun, Anda perlu menerapkan penyedia Automation UI untuk kontrol tersebut agar dapat diakses oleh aplikasi klien aksesibilitas. Anda juga perlu menerapkan penyedia untuk kontrol pihak ketiga apa pun yang tidak menyertakan penyedia. Anda menerapkan penyedia dengan menerapkan antarmuka penyedia Automation UI dan antarmuka pola kontrol.

Topik ini memberikan gambaran umum tentang bagaimana pengembang kontrol menerapkan penyedia Automation UI. Ini termasuk bagian berikut.

Jenis Penyedia

Penyedia Automation UI termasuk dalam dua kategori: penyedia sisi server, dan penyedia sisi klien (atau proksi).

Penyedia sisi server adalah objek, seperti kontrol kustom, yang berisi implementasi aslinya sendiri dari antarmuka penyedia Automation UI yang relevan. Penyedia sisi server berkomunikasi dengan aplikasi klien di seluruh batas proses dengan mengekspos implementasi antarmuka penyedia ke inti Automation UI, yang permintaan layanan dari klien. Untuk informasi selengkapnya tentang penyedia sisi server, lihat Menerapkan Penyedia Automasi UI Server-Side.

Penyedia sisi klien, atau proksi, adalah objek yang mengimplementasikan antarmuka penyedia Automation UI atas nama kontrol tidak menyertakan implementasi penyedia penuh sendiri. Tanpa proksi, kontrol seperti itu sebagian besar buram untuk Automasi UI, yang hanya dapat menyediakan informasi dasar yang tersedia dari handel jendela (HWND), seperti lokasi kontrol. Biasanya, penyedia proksi berkomunikasi dengan aplikasi di seluruh batas proses dengan mengirim dan menerima pesan Windows. Untuk informasi selengkapnya, lihat Menerapkan Penyedia Otomatisasi UI Client-Side (Proksi).

Konsep Penyedia UI Automation

Bagian ini memberikan penjelasan singkat tentang beberapa konsep utama yang perlu Anda pahami untuk menerapkan penyedia UI Automation.

Elemen

Elemen Automation UI adalah bagian dari UI—biasanya jendela atau kontrol—yang terlihat oleh klien Automation UI. Contohnya termasuk jendela aplikasi, panel, tombol, tips alat, kotak daftar, dan item daftar.

Elemen Automation UI diekspos ke klien sebagai pohon. UI Automation membuat pohon dengan menavigasi dari satu elemen ke elemen lainnya. Navigasi diaktifkan oleh penyedia untuk setiap elemen. Setiap elemen dapat menunjuk ke elemen induknya sendiri, elemen saudara kandungnya, dan elemen turunan pertama dan terakhirnya.

Klien dapat melihat pohon Automation UI dalam tiga tampilan utama, seperti yang dijelaskan dalam tabel berikut:

Tampilan Deskripsi
Tampilan mentah Mencakup semua elemen.
Tampilan kontrol Termasuk elemen yang merupakan kontrol.
Tampilan konten Termasuk elemen kontrol yang menyampaikan informasi kepada pengguna.

 

Ini adalah tanggung jawab penerapan penyedia untuk mendefinisikan elemen sebagai elemen konten atau elemen kontrol. Elemen kontrol mungkin atau mungkin juga bukan elemen konten, tetapi semua elemen konten adalah elemen kontrol.

Untuk informasi selengkapnya tentang tampilan klien pohon, lihat Gambaran Umum Pohon Automasi UI.

Kerangka kerja

Kerangka kerja adalah komponen yang mengelola kontrol turunan, pengujian klik, dan rendering di area layar. Misalnya, jendela Win32, sering disebut sebagai HWND, dapat berfungsi sebagai kerangka kerja yang berisi beberapa elemen Automation UI, seperti bilah menu, bilah status, dan tombol.

Kontrol kontainer Win32 seperti kotak daftar dan kontrol tampilan pohon dianggap sebagai kerangka kerja karena berisi kode mereka sendiri untuk merender item anak dan melakukan pengujian hit pada mereka. Sebaliknya, kotak daftar WPF bukan kerangka kerja, karena penyajian dan pengujian hit sedang ditangani oleh jendela yang berisi.

UI dalam aplikasi dapat terdiri dari kerangka kerja yang berbeda. Misalnya, HWND dalam aplikasi mungkin berisi HTML Dinamis (DHTML) yang pada gilirannya dapat berisi komponen seperti kotak kombo dalam HWND.

Fragmen

Subtree lengkap elemen dari kerangka kerja tertentu disebut fragmen. Elemen pada node root dari subpohon disebut root fragmen. Akar fragmen tidak memiliki induk, tetapi dihosting dalam beberapa kerangka kerja lain, biasanya jendela Win32 (HWND).

Host

Simpul akar dari setiap fragmen harus dihosting dalam elemen, biasanya jendela Win32 (HWND). Pengecualiannya adalah desktop, yang tidak dihosting di elemen lain mana pun. Host kontrol kustom adalah HWND kontrol itu sendiri, bukan jendela aplikasi atau jendela lain yang mungkin berisi grup kontrol tingkat atas.

Host fragmen memainkan peran penting dalam menyediakan layanan UI Automation. Hal ini memungkinkan navigasi ke root fragmen, dan menyediakan beberapa properti default sehingga penyedia kustom tidak harus menerapkannya.

Konseptual

Menerapkan Penyedia Automasi UI Client-Side

Menerapkan Penyedia Automasi UI Server-Side

Gambaran Umum Pohon UI Automation