Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Topik ini menyediakan informasi tentang menggunakan anotasi server untuk menentukan objek panggilan balik.
Untuk mengambil alih properti yang menentukan objek panggilan balik
- Dapatkan penunjuk antarmuka IAccessible ke elemen yang dapat diakses yang akan dianotasi.
- Panggil QueryInterface pada elemen yang dapat diakses untuk mendapatkan penunjuk antarmuka IAccIdentity.
- Panggil IAccIdentity::GetIdentityString() pada IAccIdentity penunjuk antarmuka untuk mendapatkan string yang secara unik mengidentifikasi elemen yang dapat diakses yang akan dianotasi.
- Gunakan CoCreateInstance atau CoCreateInstanceEx untuk membuat objekIAccPropServices.
- Buat objek Model Objek Komponen (COM) yang mengimplementasikan IAccPropServer.
- Panggil IAccPropServices::SetPropServer, dengan meneruskan string identitas, GUID yang menunjukkan properti yang akan ditimpa, dan penunjuk ke objek panggilan balik IAccPropServer.
- Lepaskan pointer antarmuka dan bebaskan memori.
Ketika klien meminta properti elemen yang dapat diakses, objek panggilan balik akan dipanggil dan akan mengembalikan nilai ke klien.
Seperti saat menentukan nilai, pengembang server dapat menggunakan metodeIAccPropServices::ComposeHwndIdentityString untuk mendapatkan string identitas; atau mereka dapat menggunakan metode IAccPropServices::SetHwndPropServer dan menentukan hwnd, idObject, atau parameter idChild alih-alih string identitas.
Saat menggunakanSetPropServeratau SetHwndPropServer pada objek kontainer, pengembang server dapat secara opsional menentukan bahwa informasi penggantian juga harus berlaku untuk semua turunan elemen kontainer tersebut.
Server dapat secara eksplisit menghapus anotasi kapan saja dengan menggunakan IAccPropServices::ClearProps. Ini biasanya tidak diperlukan, karena layanan anotasi akan secara otomatis membersihkan dan merilis informasi anotasi ketika elemen yang dapat diakses yang dianotasikan menghilang.
Di bawah ini adalah daftar properti yang dapat diannotasi menggunakan prosedur ini.
Properti yang Didukung Saat Menentukan Panggilan Balik
Saat menentukan panggilan balik, properti berikut dapat dianotasi. Saat ini properti ini tidak dapat dianotasi secara langsung dengan menentukan nilai.
| Harta benda | Jenis |
|---|---|
| PROPID_ACC_NAME | VT_BSTR |
| PROPID_ACC_DESCRIPTION | VT_BSTR |
| PROPID_ACC_ROLE | VT_I4 |
| PROPID_ACC_STATE | VT_I4 |
| PROPID_ACC_BANTUAN | VT_BSTR |
| PROPID_ACC_KEYBOARDSHORTCUT | VT_BSTR |
| PROPID_ACC_DEFAULTACTION | VT_BSTR |
| PROPID_ACC_VALUEMAP | VT_BSTR |
| PROPID_ACC_ROLEMAP | VT_BSTR |
| PROPID_ACC_STATEMAP | VT_BSTR |
| PROPID_ACC_FOCUS | VT_DISPATCH VT_I4 |
| PROPID_ACC_SELECTION | VT_DISPATCH VT_I4 VT_UNKNOWN |
| PROPID_ACC_PARENT | VT_DISPATCH |
| PROPID_ACC_NAV_UP | VT_DISPATCH VT_I4 |
| PROPID_ACC_NAV_DOWN | VT_DISPATCH VT_I4 |
| PROPID_ACC_NAV_LEFT | VT_DISPATCH VT_I4 |
| PROPID_ACC_NAV_RIGHT | VT_DISPATCH VT_I4 |
| PROPID_ACC_NAV_PREV | VT_DISPATCH (Pemanggilan VT) VT_I4 |
| PROPID_ACC_NAV_NEXT | VT_DISPATCH VT_I4 |
| PROPID_ACC_NAV_FIRSTCHILD | VT_DISPATCH VT_I4 |
| PROPID_ACC_NAV_LASTCHILD | VT_DISPATCH VT_I4 |