Método ITextRangeProvider::GetEnclosingElement (uiautomationcore.h)
Devuelve el elemento más interno que incluye el intervalo de texto especificado.
Sintaxis
HRESULT GetEnclosingElement(
[out, retval] IRawElementProviderSimple **pRetVal
);
Parámetros
[out, retval] pRetVal
Tipo: IRawElementProviderSimple**
Proveedor Automatización de la interfaz de usuario del elemento más interno que incluye el ITextRangeProvider especificado.
Nota
El elemento envolvente puede abarcar más que solo el ITextRangeProvider especificado.
Si no se encuentra ningún elemento envolvente, se devuelve el elemento primario ITextProvider del ITextRangeProvider .
Este parámetro se pasa sin inicializar.
Valor devuelto
Tipo: HRESULT
Si este método se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.
Observaciones
Ejemplos
En este ejemplo se muestra una secuencia de texto que contiene un vínculo de imagen. El vínculo es un elemento secundario de la imagen, pero ambos abarcan el mismo intervalo de texto y se exponen como objetos incrustados dentro de la secuencia de texto.
Hello <Image Link> World
- Tanto la imagen como el vínculo también son descendientes del ITextProvider de la secuencia y se pueden especificar como childElement en una llamada a ITextProvider::RangeFromChild.
- Al llamar a ITextRangeProvider::RangeFromChild, mediante la imagen o el vínculo, se devuelve el mismo intervalo de texto (Range1).
- GetChildren no devuelve el vínculo.
- GetEnclosingElement no devuelve la imagen de ningún intervalo de texto.
- GetEnclosingElement en Range1 devuelve el vínculo.
- GetChildren on Range1 no devuelve ningún elemento secundario.
- GetEnclosingElement en el intervalo de texto del ITextProvider de la secuencia devuelve el proveedor.
- GetChildren en el intervalo de texto del ITextProvider de la secuencia devuelve solo la imagen.
En este ejemplo se muestra una secuencia de texto que contiene una tabla de dos celdas rodeada de texto.
Texto de inicio
Celda de tabla 1 Celda de tabla 2 Texto final
- Caso 1: ITextProvider de la secuencia y intervalo de texto completo
- ITextRangeProvider::GetEnclosingElement en todo el intervalo de texto devuelve el ITextProvider de la secuencia.
- GetChildren devuelve todos los elementos secundarios del ITextProvider de la secuencia, solo el elemento table en este caso.
- Caso 2: Intervalo de texto obtenido llamando a ITextProvider::RangeFromChild en el elemento de tabla:
- ITextRangeProvider::GetEnclosingElement devuelve el elemento table.
- ITextRangeProvider::GetChildren devuelve ambas celdas de tabla.
- Caso 3: Intervalo de texto que abarca el contenido visual de la celda de tabla 1 Celda de tabla 2:
- ITextRangeProvider::GetEnclosingElement devuelve el elemento table.
- ITextRangeProvider::GetChildren devuelve ambas celdas de tabla.
- Caso 4: Intervalo de texto que abarca la palabra Celda de la tabla 1:
- ITextRangeProvider::GetEnclosingElement devuelve el primer elemento de celda.
- ITextRangeProvider::GetChildren no devuelve ningún elemento.
- Caso 5: intervalo de texto degenerado (vacío) que representa ambos inicios (tabla y primera celda):
- ITextRangeProvider::GetEnclosingElement devuelve el primer elemento de celda (el elemento más interno con un intervalo que incluye el intervalo degenerado).
- ITextRangeProvider::GetChildren no devuelve ningún elemento.
- Caso 1: ITextProvider de la secuencia y intervalo de texto completo
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP [aplicaciones de escritorio | aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | uiautomationcore.h (include UIAutomation.h) |
Consulte también
ITextProvider, ITextRangeProvider, ITextRangeProvider::GetChildren, Automatización de la interfaz de usuario Providers Overview