IRawElementProviderWindowlessSite ::GetAdjacentFragment, méthode (uiautomationcore.h)
Récupère un pointeur de fragment pour un fragment adjacent au contrôle Microsoft ActiveX sans fenêtre appartenant à ce site de contrôle.
Syntaxe
HRESULT GetAdjacentFragment(
[in] NavigateDirection direction,
[out, retval] IRawElementProviderFragment **ppParent
);
Paramètres
[in] direction
Type : NavigateDirection
Valeur qui indique le fragment adjacent à récupérer (parent, frère suivant, frère précédent, etc.).
[out, retval] ppParent
Type : IRawElementProviderFragment**
Reçoit le fragment adjacent.
Valeur de retour
Type : HRESULT
Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un HRESULT code d’erreur. La valeur de retour est E_INVALIDARG si la direction est NavigateDirection_FirstChild ou NavigateDirection_LastChild, qui ne sont pas valides pour cette méthode. S’il n’existe aucun fragment adjacent dans la direction demandée, la méthode retourne S_OK et définit ppRetVal sur NULL.
Remarques
Pour retourner le parent du fragment, un objet qui implémente l’interface
Un fournisseur appelle généralement cette méthode dans le cadre de la gestion de la méthode IRawElementProviderFragment ::Navigate.
Exemples
L’exemple de code C++ suivant montre comment implémenter la méthode GetAdjacentFragment.
IFACEMETHODIMP CProviderWindowlessSite::GetAdjacentFragment(
enum NavigateDirection direction, IRawElementProviderFragment **ppFragment)
{
if (ppFragment == NULL)
{
return E_INVALIDARG;
}
*ppFragment = NULL;
HRESULT hr = S_OK;
switch (direction)
{
case NavigateDirection_Parent:
{
IRawElementProviderSimple *pSimple = NULL;
// Call an application-defined function to retrieve the
// parent provider interface.
hr = GetParentProvider(&pSimple);
if (SUCCEEDED(hr))
{
// Get the parent's IRawElementProviderFragment interface.
hr = pSimple->QueryInterface(IID_PPV_ARGS(ppFragment));
pSimple->Release();
}
}
break;
case NavigateDirection_FirstChild:
case NavigateDirection_LastChild:
hr = E_INVALIDARG;
break;
// Ignore NavigateDirection_NextSibling and NavigateDirection_PreviousSibling
// because there are no adjacent fragments.
default:
break;
}
return hr;
}
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 8 [applications de bureau | Applications UWP] |
serveur minimum pris en charge | Windows Server 2012 [applications de bureau | Applications UWP] |
plateforme cible | Windows |
d’en-tête | uiautomationcore.h (include UIAutomation.h) |