Método IUIAutomationTextRange::Move (uiautomationclient.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      *moved
);

Parámetros

[in] unit

Tipo: TextUnit

Valor que especifica el tipo de unidades de texto, como carácter, palabra, párrafo, etc.

[in] count

Tipo: int

Número de unidades de texto que se deben 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] moved

Tipo: int*

Recibe el número de unidades de texto que realmente se mueven. 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 IUIAutomationTextPattern::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 código de error de HRESULT.

Comentarios

IUIAutomationTextRange::Move mueve el intervalo de texto para abarcar una parte diferente del texto; no modifica el texto de ninguna manera.

Para un intervalo de texto no degenerado (no vacío), IUIAutomationTextRange::Move normaliza y mueve el intervalo mediante los pasos siguientes.

  1. El intervalo de texto se contrae en un intervalo degenerado (vacío) en el punto de conexión inicial.
  2. Si es necesario, el intervalo de texto resultante se mueve hacia atrás en el documento hasta el principio del límite de unidad de texto solicitado.
  3. El intervalo de texto se mueve hacia delante o hacia atrás en el documento por el número solicitado de límites de unidad de texto.
  4. El intervalo de texto se expande 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 se deja sin cambios. Si el intervalo de texto no se puede mover hasta el número solicitado de unidades de texto, pero se puede mover por un número menor de unidades de texto, el intervalo de texto se mueve por el menor número de unidades de texto y se mueve en el número de unidades de texto movidas .

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

Al mover un intervalo de texto, IUIAutomationTextRange::Move omite los límites de los objetos incrustados del texto.

IUIAutomationTextRange::Move respeta el texto oculto y visible.

Si un control basado en texto no admite la unidad de texto especificada por el parámetro unit , IUIAutomationTextRange::Move sustituye a la siguiente unidad de texto compatible más grande.

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

  • Carácter
  • Formato
  • Word
  • Línea
  • Paragraph
  • Página
  • Documento

Comportamiento del intervalo cuando la unidad es TextUnit::Format

TextUnit::Format como valor de unidad 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 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 Automatización de la interfaz de usuario unidades de texto o Automatización de la interfaz de usuario compatibilidad con contenido textual.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 7, Windows Vista con SP2 y Actualización de plataforma para Windows Vista, Windows XP con SP3 y Actualización de plataforma para Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 R2, Windows Server 2008 con SP2 y Actualización de plataforma para Windows Server 2008, Windows Server 2003 con SP2 y Actualización de plataforma para Windows Server 2008 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado uiautomationclient.h (include UIAutomation.h)

Consulte también

IUIAutomationTextRange

Automatización de la interfaz de usuario compatibilidad con contenido textual