Bagikan melalui


Praktik Terbaik untuk Menggunakan Array Aman

Banyak metode antarmuka Microsoft UI Automation API mengambil argumen yang disebut array aman dari jenis data SAFEARRAY. Topik ini menjelaskan praktik terbaik untuk menggunakan array aman dalam aplikasi Automation UI.

Klien

Semua array aman yang digunakan dengan metode API klien Automation UI adalah array satu dimensi berbasis nol. Untuk membuat array aman bagi suatu metode klien UI Automation, gunakan fungsi SafeArrayCreateVector, dan untuk membaca dari serta menulis ke array aman, gunakan fungsi SafeArrayGetElement dan SafeArrayPutElement. Ketika Anda selesai menggunakan array aman, selalu hancurkanlah dengan menggunakan fungsi SafeArrayDestroy, baik Anda membuat array aman atau menerimanya dari metode klien UI Automation.

Beberapa metode Automation UI, termasuk metode pengambilan properti seperti GetCurrentPropertyValue, mengambilVARIANyang dapat berisi POINT atau UiaRect struktur. POINT dikemas ke dalam VARIANT sebagai array aman dari tipe double (VT_R8) dengan anggota x pada indeks 0, dan anggota y pada indeks 1. Demikian pula, UiaRect dikemas ke dalam VARIAN sebagai array yang terdiri dari bilangan desimal yang aman dengan anggota kiri, atas, lebar, dan tinggi pada indeks 0 hingga 3, masing-masing. Untuk array struktur UiaRect, array aman berisi array berurutan dari empat bilangan desimal untuk setiap UiaRect. kiri, atas , lebar , dan tinggi anggota pertama UiaRect menempati indeks 0 hingga 3, anggota indeks persegi panjang kedua menempati indeks 4 sampai 7, dan sebagainya.

AntarmukaIUIAutomationmencakup metode berikut untuk mengonversi antara SAFEARRAY dan berbagai jenis data lainnya.

Metode Deskripsi
IUIAutomation::IntNativeArrayToSafeArray Mengonversi array bilangan bulat menjadi SAFEARRAY.
IUIAutomation::IntSafeArrayToNativeArray Mengonversi SAFEARRAY bilangan bulat menjadi array.
IUIAutomation::SafeArrayToRectNativeArray MengonversiSAFEARRAY yang berisi koordinat persegi panjang ke array jenis RECT.

 

Penyedia

Penyedia harus menerapkan sejumlah metode antarmuka yang dipanggil UI Automation untuk mengambil informasi dari penyedia. Seringkali, informasi ini terdiri dari larik nilai. Untuk mengembalikan array ke UI Automation, penyedia harus mengemas array ke dalam struktur SAFEARRAY. Elemen array harus dari jenis data yang diharapkan, dan harus muncul dalam urutan yang diharapkan.

Konseptual

Gambaran Umum Properti Automasi UI

Dasar-Dasar Automasi UI