Compartir a través de


Método ITextStoreACP::SetText (texttor.h)

El método ITextStoreACP::SetText establece la selección de texto en las posiciones de caracteres proporcionadas.

Sintaxis

HRESULT SetText(
  [in]  DWORD         dwFlags,
  [in]  LONG          acpStart,
  [in]  LONG          acpEnd,
  [in]  const WCHAR   *pchText,
  [in]  ULONG         cch,
  [out] TS_TEXTCHANGE *pChange
);

Parámetros

[in] dwFlags

Si se establece en el valor de TS_ST_CORRECTION, el texto es una transformación (corrección) del contenido existente y se conserva cualquier información de marcado de texto especial (metadatos), como .wav datos de archivo o un identificador de idioma. El cliente define el tipo de información de marcado que se va a conservar.

[in] acpStart

Especifica la posición del carácter inicial del texto que se va a reemplazar.

[in] acpEnd

Especifica la posición de carácter final del texto que se va a reemplazar. Este parámetro se omite si el valor es 1.

[in] pchText

Especifica el puntero al texto de reemplazo. La cadena de texto no tiene que terminar con NULL , porque el recuento de caracteres de texto se especifica en el parámetro cch .

[in] cch

Especifica el número de caracteres del texto de reemplazo.

[out] pChange

Puntero a una estructura de TS_TEXTCHANGE con los datos siguientes.

Valor Significado
acpStart
Posición del carácter de aplicación inicial antes de insertar el texto en el documento.
acpOldEnd
Posición final antes de insertar el texto en el documento. Este valor es el mismo que acpStart para un punto de inserción. Si este valor es diferente de acpStart, se seleccionó el texto antes de la inserción de texto.
acpNewEnd
Posición final después de que se haya producido la inserción de texto.

Valor devuelto

Este método puede devolver uno de estos valores.

Valor Descripción
S_OK
Método realizado correctamente.
TS_E_INVALIDPOS
El parámetro acpStart o acpEnd está fuera del texto del documento.
TS_E_NOLOCK
El autor de la llamada no tiene un bloqueo de lectura y escritura.
TS_E_READONLY
El documento es de solo lectura. No se puede modificar el contenido.
TS_E_REGION
Se intentó modificar el texto a través de un límite de región.

Comentarios

Las aplicaciones deben iniciar primero una composición mediante ITextStoreACP::InsertTextAtSelection. ITextStoreACP::SetText solo debe usarse dentro de una composición existente. Si no hay ninguna composición activa en el momento en que se llama a SetText , el administrador de TSF crea una composición que dura lo suficientemente larga como para ajustar la llamada a SetText.

Las posiciones de caracteres acpStart y acpEnd no pueden estar fuera del intervalo de documentos.

Las aplicaciones no deben llamar al método ITextStoreACPSink::OnTextChange en respuesta a este método.

Este método debe llamar al método ITextStoreACP::SetSelection para seleccionar el texto que se va a cambiar. Después de ejecutar correctamente el método ITextStoreACP::SetSelection , este método llama al método ITextStoreACP::InsertTextAtSelection para realizar el cambio de texto real.

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

Composiciones

ITextStoreACP

ITextStoreACPSink::OnTextChange

Constantes de almacén de texto varios

TS_TEXTCHANGE