Share via


使用伺服器批註

本主題提供使用伺服器批註來指定回呼物件的相關資訊。

覆寫指定回呼物件的屬性

  1. 取得要標注之可存取專案的 IAccessible 介面指標。
  2. 在可存取的元素上呼叫 QueryInterface ,以取得 IAccIdentity 介面指標。
  3. IAccIdentity介面指標上呼叫IAccIdentity::GetIdentityString () ,以取得可唯一識別要標注之可存取專案的字串。
  4. 使用 CoCreateInstanceCoCreateInstanceEx 來建立 IAccPropServices 物件。
  5. 建立元件物件模型 (COM) 實作 IAccPropServer的物件。
  6. 呼叫 IAccPropServices::SetPropServer、傳遞識別字串、指出要覆寫屬性的 GUID,以及 IAccPropServer 回呼物件的指標。
  7. 釋放介面指標和釋放記憶體。

當用戶端要求可存取專案的 屬性時,會呼叫回呼物件,並將值傳回給用戶端。

如同指定值時,伺服器開發人員也可以使用 IAccPropServices::ComposeHwndIdentityString 方法來取得識別字串;或者,他們可以使用 IAccPropServices::SetHwndPropServer 方法,並指定 hwndidObjectidChild 參數,而不是識別字串。

在容器物件上使用 SetPropServerSetHwndPropServer 時,伺服器開發人員可以選擇性地指定覆寫資訊也應該套用至該容器的所有元素子系。

伺服器可以使用 IAccPropServices::ClearProps,隨時明確清除註釋。 這通常不需要,因為批註服務會在標注的可存取專案消失時自動清除和釋放批註資訊。

以下是可以使用這個程式標注的屬性清單。

指定回呼時支援的屬性

指定回呼時,可以標注下列屬性。 目前,這些屬性無法藉由指定值直接標注。

屬性 類型
PROPID_ACC_NAME VT_BSTR
PROPID_ACC_DESCRIPTION VT_BSTR
PROPID_ACC_ROLE VT_I4
PROPID_ACC_STATE VT_I4
PROPID_ACC_HELP 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
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