Compartir a través de


Método ITextRangeProvider::Move (uiautomationcore.h)

Mueve el intervalo de texto hacia delante o hacia atrás por el número especificado de unidades de texto.

Sintaxis

HRESULT Move(
  [in]          TextUnit unit,
  [in]          int      count,
  [out, retval] int      *pRetVal
);

Parámetros

[in] unit

Tipo: TextUnit de

Tipo de unidades de texto, como carácter, palabra, párrafo, etc.

[in] count

Tipo: int

Número de unidades de texto que se van a mover. Un valor positivo mueve el intervalo de texto hacia delante.

Un valor negativo mueve el intervalo de texto hacia atrás. Cero no tiene ningún efecto.

[out, retval] pRetVal

Tipo: int*

Número de unidades de texto que realmente se han movido. Puede ser menor que el número solicitado si cualquiera de los nuevos puntos de conexión de intervalo de texto es mayor o menor que los puntos de conexión recuperados por el método ITextProvider::D ocumentRange. Este valor puede ser negativo si la navegación se está produciendo en la dirección hacia atrás.

Valor devuelto

Tipo: HRESULT

Si este método se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un hrESULT código de error.

Observaciones

ITextRangeProvider::Move solo debe mover el intervalo de texto para abarcar una parte diferente del texto, no debe modificar el texto de ninguna manera.

Para un intervalo de texto no degenerado (no vacío), ITextRangeProvider::Move debe normalizar y mover el intervalo de texto realizando los pasos siguientes.

  1. Contraiga el intervalo de texto a un intervalo degenerado (vacío) en el punto de conexión inicial.
  2. Si es necesario, mueva el intervalo de texto resultante hacia atrás en el documento hasta el principio del límite de unidad solicitado.
  3. Mueva el intervalo de texto hacia delante o hacia atrás en el documento por el número solicitado de límites de unidad de texto.
  4. Expanda el intervalo de texto desde el estado degenerado moviendo el extremo final hacia delante por un límite de unidad de texto solicitado.
Si se produce un error en alguno de los pasos anteriores, el intervalo de texto debe dejarse sin cambios. Si el intervalo de texto no se puede mover en cuanto al número solicitado de unidades de texto, pero se puede mover por un número menor de unidades de texto, el intervalo de texto debe moverse por el menor número de unidades de texto y pRetVal debe establecerse en el número de unidades de texto que se han movido correctamente.

Para un intervalo de texto degenerado, ITextRangeProvider::Move simplemente debe mover el punto de inserción de texto por el número especificado de unidades de texto.

Al mover un intervalo de texto, el proveedor debe omitir los límites de los objetos incrustados del texto.

ITextRangeProvider::Move debe respetar el texto oculto y visible.

Si un control basado en texto no admite la unidad de texto especificada por el parámetro unidad, el proveedor debe sustituir la siguiente unidad de texto compatible más grande.

El tamaño de las unidades de texto, de la unidad más pequeña a la más grande, es el siguiente.

  • Carácter
  • Formato
  • Palabra
  • Línea
  • Párrafo
  • Página
  • Documento

comportamiento de intervalo cuando se unidad de

TextUnit::Format como unidad de valor coloca el límite de un intervalo de texto para expandir o mover el intervalo en función de los atributos de texto compartidos (formato) del texto dentro del intervalo. Sin embargo, el uso de la unidad de texto de formato no debe mover ni expandir un intervalo de texto a través del límite de un objeto incrustado, como una imagen o un hipervínculo. Para obtener más información, consulta unidades de texto de automatización de la interfaz de usuario o patrones de control Text y TextRange.

Requisitos

Requisito Valor
cliente mínimo admitido Windows XP [aplicaciones de escritorio | Aplicaciones para UWP]
servidor mínimo admitido Windows Server 2003 [aplicaciones de escritorio | Aplicaciones para UWP]
de la plataforma de destino de Windows
encabezado de uiautomationcore.h (include UIAutomation.h)

Consulte también

conceptual de

ITextProvider

ITextRangeProvider

de referencia de

patrones de control Text y TextRange

Introducción a los proveedores de automatización de la interfaz de usuario de