Compartir a través de


Método IAnchor::Shift (textstor.h)

El método IAnchor::Shift desplaza el delimitador hacia delante o hacia atrás dentro de una secuencia de texto.

Sintaxis

HRESULT Shift(
  [in]  DWORD   dwFlags,
  [in]  LONG    cchReq,
  [out] LONG    *pcch,
  [in]  IAnchor *paHaltAnchor
);

Parámetros

[in] dwFlags

Campos de bits que se usan para evitar el posicionamiento del delimitador.

Valor Significado
TS_SHIFT_COUNT_ONLY
El delimitador no se desplaza. Si no se establece la marca (dwFlags = 0), el delimitador se desplazará según lo especificado por la otra configuración de parámetros.

[in] cchReq

Número de caracteres que se van a mover el delimitador dentro de la secuencia de texto.

[out] pcch

Número real de caracteres movidos dentro de la secuencia de texto. El método establecerá pcch en cero si se produce un error.

[in] paHaltAnchor

Referencia a un delimitador que bloquea el desplazamiento. Establézcalo en NULL para evitar el bloqueo del cambio.

Valor devuelto

Este método puede devolver uno de estos valores.

Valor Descripción
S_OK
Método realizado correctamente.
E_FAIL
Error en el cambio.
E_INVALIDARG
Un valor de parámetro de entrada no es válido.
E_NOTIMPL
El valor del parámetro dwFlags no se implementa en este método.

Comentarios

Los parámetros cchReq y pcch pueden ser negativos, lo que significa un desplazamiento hacia atrás en la secuencia de texto o positivo, lo que significa un desplazamiento hacia delante. El número real de caracteres desplazados puede ser menor que cchReq si se encuentra el principio o el final del documento, se encuentra un límite de región o si paHaltAnchor recibe un delimitador que bloquea el desplazamiento.

Si paHaltAnchor recibe un delimitador que bloquea el desplazamiento, la aplicación truncará el desplazamiento en la posición ocupada por paHaltAnchor. Si paHaltAnchor no está dentro del intervalo de texto cubierto por el desplazamiento, no tiene relevancia para el turno y se omite.

Por ejemplo, si el delimitador al que hace referencia paHaltAnchor tiene 8 caracteres delante del delimitador en la secuencia y un cliente llama a Mayús (0, 10, pcch, paHaltAnchor), después, al salir, el delimitador solo habrá movido 8 caracteres. Si el delimitador al que hace referencia paHaltAnchor es igual al delimitador actual que se va a mover, Shift devolverá correctamente sin mover el delimitador en absoluto. En este caso pcch será 0.

El desplazamiento de delimitador siempre está bloqueado por límites de región, como si se encontrara el principio o el final del documento. Esto se indicará en la salida por el pcch de desplazamiento real siendo menor en valor absoluto que el cchReq de desplazamiento solicitado. En este caso, los clientes pueden usar IAnchor::ShiftRegion para desplazar el delimitador a una región adyacente.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado textstor.h
Archivo DLL Msctf.dll
Redistribuible TSF 1.0 en Windows 2000 Professional

Consulte también

IAnchor

IAnchor::ShiftRegion