Metodo IRawElementProviderWindowlessSite::GetAdjacentFragment (uiautomationcore.h)
Recupera un puntatore di frammento per un frammento adiacente al controllo Microsoft ActiveX senza finestra di proprietà di questo sito di controllo.
Sintassi
HRESULT GetAdjacentFragment(
[in] NavigateDirection direction,
[out, retval] IRawElementProviderFragment **ppParent
);
Parametri
[in] direction
Tipo: NavigateDirection
Valore che indica il frammento adiacente da recuperare (padre, elemento di pari livello successivo, elemento di pari livello precedente e così via).
[out, retval] ppParent
Tipo: IRawElementProviderFragment**
Riceve il frammento adiacente.
Valore restituito
Se questo metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT. Il valore restituito è E_INVALIDARG se la direzione è NavigateDirection_FirstChild o NavigateDirection_LastChild, che non sono valide per questo metodo. Se nella direzione richiesta non è presente alcun frammento adiacente, il metodo restituisce S_OK e imposta ppRetVal su NULL.
Osservazioni
Per restituire l'elemento padre del frammento, un oggetto che implementa l'interfaccia
Un provider chiama in genere questo metodo come parte della gestione del metodo IRawElementProviderFragment::Navigate.
Esempi
Nell'esempio di codice C++ seguente viene illustrato come implementare il metodo 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;
}
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows 8 [app desktop | App UWP] |
server minimo supportato | Windows Server 2012 [app desktop | App UWP] |
piattaforma di destinazione | Finestre |
intestazione |
uiautomationcore.h (include UIAutomation.h) |