Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Toto téma obsahuje informace o použití anotace serveru k určení objektu zpětného volání.
Přepsat vlastnost, která určuje objekt zpětného volání
- Získejte ukazatel rozhraní IAccessible na přístupný prvek, který má být opatřen poznámkami.
- Voláním QueryInterface u přístupného prvku získáte ukazatel rozhraní IAccIdentity.
- Volání IAccIdentity::GetIdentityString() na IAccIdentity ukazatele rozhraní pro získání řetězce, který jednoznačně identifikuje přístupný prvek, který má být anotován.
- Pomocí CoCreateInstance nebo CoCreateInstanceEx vytvořte objekt IAccPropServices.
- Vytvořte objekt modelu COM (Component Object Model), který implementuje IAccPropServer.
- Volání IAccPropServices::SetPropServer, předání řetězce identity, identifikátor GUID označující vlastnost, která má být přepsána, a ukazatel na IAccPropServer zpětné volání objektu.
- Uvolněte ukazatele rozhraní a paměť.
Když klient požádá o vlastnost přístupného elementu, bude volán objekt zpětného volání a vrátí hodnotu klientovi.
Jako při zadávání hodnoty mohou vývojáři serveru alternativně použít IAccPropServices::ComposeHwndIdentityString metodu získání řetězce identity; nebo mohou použít metodu IAccPropServices::SetHwndProp Server a místo řetězce identity zadat hwnd, idObjectnebo idChild parametry.
Při použití SetPropServer nebo SetHwndPropServer u objektu kontejneru mohou vývojáři serveru volitelně určit, že přepsané informace by měly být také aplikovány na všechny podřízené prvky daného kontejneru.
Servery mohou kdykoliv vymazat poznámku pomocí IAccPropServices::ClearProps. Obvykle to není nutné, protože služba poznámek automaticky vyčistí a uvolní informace o poznámkách, když přístupný prvek, který je opatřen poznámkami, zmizí.
Níže je seznam vlastností, které lze pomocí tohoto postupu anotovat.
Vlastnosti podporované při specifikaci zpětného volání
Při zadávání zpětného volání lze následující vlastnosti anotovat. V současné době nelze tyto vlastnosti přímo anotovat zadáním hodnoty.
| Nemovitost / Vlastnictví | Typ |
|---|---|
| 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_KLÁVESOVÁZKRATKA | 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_PRVNÍDÍTĚ | VT_DISPATCH VT_I4 |
| PROPID_ACC_NAV_LASTCHILD | VT_DISPATCH VT_I4 |