Bagikan melalui


Pola Kontrol TextEdit

Memperkenalkan panduan dan konvensi untuk menerapkan ITextEditProvider, termasuk informasi tentang properti dan metode. Pola kontrol TextEdit digunakan untuk akses terprogram ke kontrol yang memodifikasi teks, misalnya kontrol yang melakukan koreksi otomatis atau mengaktifkan komposisi input.

Catatan

Catatan implementasi dalam topik ini mengacu pada API yang berasal dari Text Services Framework (TSF). Untuk informasi selengkapnya tentang TSF dan referensi API, lihat Kerangka Kerja Layanan Teks.

Anggota yang Diperlukan untuk ITextEditProvider

Properti dan metode ini diperlukan untuk mengimplementasikan antarmuka ITextEditProvider .

Anggota yang diperlukan Jenis anggota Catatan
GetActiveComposition Metode Mengembalikan rentang konversi saat ini (tidak ada jika tidak ada konversi). Mengembalikan komposisi aktif (dalam TSF, ini adalah rentang yang ditandai dengan GUID_PROP_COMPOSING). Misalnya dengan Microsoft Japanese Input Method Editor (IME), ini akan menjadi teks bergaris bawah lengkap.
GetConversionTarget Metode Mengembalikan rentang target konversi saat ini (tidak ada jika tidak ada konversi). Di TSF, ini adalah rentang karakter yang ditandai sebagai TF_ATTR_TARGET_NOTCONVERTED atau TF_ATTR_TARGET_CONVERTED dari struktur TF_DISPLAYATTRIBUTE .

Peristiwa TextEditTextChanged dan ConversionTargetChanged harus dinaikkan oleh elemen Microsoft UI Automation yang mendukung pola TextEdit .

TextEditTextChanged

TextEditChangeType Payload Peristiwa Catatan
Autocorrect String baru yang dikoreksi Dimunculkan ketika koreksi otomatis dilakukan oleh kontrol. Atau setiap kali penggantian dilakukan melalui TSF dan rentang memiliki nilai GUID_PROP_TKB_ALTERNATES TKB_ALTERNATES_AUTOCORRECTION_APPLIED.
Komposisi String yang diperbarui Payload hanya boleh menyertakan karakter yang berubah (jangan mengirim seluruh string komposisi). Dimunculkan setiap kali penggantian komposisi dilakukan. Di TSF, penggantian komposisi didefinisikan sebagai pengganti yang memiliki set bendera GUID_PROP_COMPOSING . Kontrol pengeditan yang mengimplementasikan TSF dapat memantau perubahan ini melalui pemberitahuan OnEndEdit .
KomposisiFinalisasi String komposisi yang diselesaikan (lihat Catatan) Di TSF, string konversi yang sedang diselesaikan ditentukan oleh bendera GUID_PROP_COMPOSING dihapus dari komposisi. Kontrol pengeditan yang mengimplementasikan TSF harus menentukan string yang diselesaikan dari EndComposition dan menaikkan peristiwa saat OnEndEdit dipanggil.
String komposisi yang diselesaikan mungkin kosong jika komposisi dibatalkan atau dihapus.

ConversionTargetChanged

  • ConversionTargetChanged terjadi saat target konversi berubah dari satu target ke target lainnya.
  • Gunakan fungsi UiaRaiseAutomationEvent untuk menaikkan peristiwa ConversionTargetChanged (berikan pengidentifikasi peristiwa UIA_TextEdit_ConversionTargetChangedEventId ).
  • ConversionTargetChanged tidak boleh dimunculkan saat konten target berubah. Jika perubahan target terjadi bersamaan dengan perubahan komposisi, peristiwa perubahan target harus dimunculkan setelah peristiwa komposisi apa pun telah dimunculkan.
  • Di TSF, target konversi ditentukan oleh nilai TF_ATTR_TARGET_CONVERTED ditetapkan dari struktur TF_DISPLAYATTRIBUTE . Perubahan dapat dipantau menggunakan OnEndEdit.

Konseptual

Jenis Kontrol dan Pola Kontrol yang Didukung

Gambaran Umum Pola Kontrol UI Automation

Gambaran Umum Pohon UI Automation