Fungsi AccessibleObjectFromEvent (oleacc.h)
Mengambil alamat antarmuka IAccessible untuk objek yang menghasilkan peristiwa yang saat ini sedang diproses oleh fungsi hook peristiwa klien.
Sintaks
HRESULT AccessibleObjectFromEvent(
[in] HWND hwnd,
[in] DWORD dwId,
[in] DWORD dwChildId,
[out] IAccessible **ppacc,
[out] VARIANT *pvarChild
);
Parameter
[in] hwnd
Jenis: HWND
Menentukan handel jendela jendela yang menghasilkan peristiwa. Nilai ini harus berupa handel jendela yang dikirim ke fungsi hook peristiwa.
[in] dwId
Jenis: DWORD
Menentukan ID objek dari objek yang menghasilkan peristiwa. Nilai ini harus berupa ID objek yang dikirim ke fungsi hook peristiwa.
[in] dwChildId
Jenis: DWORD
Menentukan apakah peristiwa dipicu oleh objek atau salah satu elemen turunannya. Jika objek memicu peristiwa, dwChildID CHILDID_SELF. Jika elemen anak memicu peristiwa, dwChildID adalah ID anak elemen. Nilai ini harus berupa ID anak yang dikirim ke fungsi hook peristiwa.
[out] ppacc
Jenis: IAccessible**
Alamat variabel pointer yang menerima alamat antarmuka IAccessible . Antarmuka adalah untuk objek yang menghasilkan peristiwa, atau untuk induk elemen yang menghasilkan peristiwa.
[out] pvarChild
Jenis: VARIAN*
Alamat struktur VARIAN yang menentukan ID anak yang dapat digunakan untuk mengakses informasi tentang elemen UI.
Mengembalikan nilai
Jenis: STDAPI
Jika berhasil, mengembalikan S_OK.
Jika tidak berhasil, mengembalikan salah satu dari kode kesalahan COM standar berikut atau lainnya.
Menampilkan kode | Deskripsi |
---|---|
|
Argumen tidak valid. |
Keterangan
Klien memanggil fungsi ini dalam fungsi hook peristiwa untuk mendapatkan penunjuk antarmuka IAccessible ke objek yang menghasilkan peristiwa atau ke induk elemen yang menghasilkan peristiwa. Parameter yang dikirim ke fungsi panggilan balik WinEventProc harus digunakan untuk parameter hwnd, dwObjectID, dan dwChildID fungsi ini.
Fungsi ini mengambil objek tingkat terendah yang dapat diakses dalam hierarki objek yang terkait dengan peristiwa. Jika elemen yang menghasilkan peristiwa bukan objek yang dapat diakses (yaitu, tidak mendukung IAccessible), maka fungsi mengambil antarmuka IAccessible dari objek induk. Objek induk harus memberikan informasi tentang elemen turunan melalui antarmuka IAccessible .
Seperti metode dan fungsi IAccessible lainnya, klien mungkin menerima kesalahan untuk penunjuk antarmuka IAccessible karena tindakan pengguna. Untuk informasi selengkapnya, lihat Menerima Kesalahan untuk Penunjuk Antarmuka IAccessible.
Fungsi ini gagal jika dipanggil sebagai respons terhadap EVENT_OBJECT_CREATE karena objek tidak sepenuhnya diinisialisasi. Demikian pula, klien tidak boleh memanggil ini sebagai respons terhadap EVENT_OBJECT_DESTROY karena objek tidak lagi tersedia dan tidak dapat merespons. Klien watch untuk peristiwa EVENT_OBJECT_SHOW dan EVENT_OBJECT_HIDE daripada untuk EVENT_OBJECT_CREATE dan EVENT_OBJECT_DESTROY.
Contoh
Contoh kode berikut menunjukkan metode ini dipanggil dalam penanganan aktivitas WinEventProc .
void CALLBACK HandleWinEvent(HWINEVENTHOOK hook, DWORD event, HWND hwnd,
LONG idObject, LONG idChild,
DWORD dwEventThread, DWORD dwmsEventTime)
{
IAccessible* pAcc = NULL;
VARIANT varChild;
HRESULT hr = AccessibleObjectFromEvent(hwnd, idObject, idChild, &pAcc, &varChild);
if ((hr == S_OK) && (pAcc != NULL))
{
// Do something with the accessible object, then release it.
// ...
pAcc->Release();
}
}
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | oleacc.h |
Pustaka | Oleacc.lib |
DLL | Oleacc.dll |
Redistribusi | Aksesibilitas Aktif 1.3 RDK pada Windows NT 4.0 dengan SP6 dan yang lebih baru dan Windows 95 |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk