Caret (Referensi Elemen UI MSAA)
Catatan
Topik ini menjelaskan tanda peduli untuk tujuan Referensi Elemen UI MSAA. Cara menggunakan caret dalam berbagai kerangka kerja UI tidak dijelaskan di sini. Lihat dokumentasi referensi API untuk kerangka kerja UI yang Anda gunakan.
Tanda sisipan adalah garis berkedip, blok, atau bitmap di area klien jendela atau dalam kontrol yang menerima input keyboard. Ini menunjukkan tempat di mana teks atau grafik disisipkan. Karena hanya satu jendela pada satu waktu yang memiliki fokus keyboard, hanya ada satu tanda sisipan dalam sistem.
Tanda sisipan mendukung metode IAccessible berikut:
Tanda sisipan mendukung properti IAccessible berikut:
Properti | Komentar |
---|---|
get_accChildCount | Properti ChildCount adalah nol. |
get_accName | Properti Nama adalah "Edit". |
get_accRole | Properti PeranROLE_SYSTEM_CARET. |
get_accState | Nilai yang mungkin untuk properti Status meliputi:
|
Tidak seperti elemen UI lainnya, objek caret tidak memiliki handel jendela terkait. Untuk mendapatkan akses ke objek caret, klien harus mengatur WinEventProc dan menunggu objek caret menghasilkan peristiwa.
Objek caret dalam kontrol edit kaya yang disediakan oleh Riched20.dll (yang digunakan dalam editor teks seperti Microsoft WordPad di Windows 98) tidak mengirim WinEvents apa pun ketika posisinya diubah selama pemilihan teks. Saat pengguna menekan tombol SHIFT dan panah untuk memilih teks, objek tanda sisipan tidak memicu EVENT_OBJECT_LOCATIONCHANGE WinEvent. Demikian pula, ketika pilihan diatur secara terprogram melalui pesan edit yang kaya, objek caret tidak mengirim peristiwa apa pun untuk menunjukkan posisi barunya.
Semua aplikasi yang menggunakan Riched20.dll menunjukkan masalah ini. Aplikasi yang menggunakan versi sebelumnya dari kontrol edit kaya mengirim peristiwa dengan benar berdasarkan pilihan.