Método ITextServices::TxSendMessage (textserv.h)

Usado por el host de ventana para reenviar mensajes enviados desde su ventana al objeto de servicios de texto.

Sintaxis

HRESULT TxSendMessage(
  UINT    msg,
  WPARAM  wparam,
  LPARAM  lparam,
  LRESULT *plresult
);

Parámetros

msg

Tipo: UINT

El identificador de mensaje.

wparam

Tipo: WPARAM

WPARAM desde el mensaje de la ventana.

lparam

Tipo: LPARAM

LPARAM del mensaje de la ventana.

plresult

Tipo: LRESULT*

El mensaje devuelve LRESULT.

Valor devuelto

Tipo: HRESULT

Si el método se realiza correctamente, el valor devuelto es S_OK.

Si se produce un error en el método, el valor devuelto es uno de los siguientes códigos HRESULT . Para obtener más información sobre los códigos de error COM, vea Control de errores en COM.

Código devuelto Descripción
E_OUTOFMEMORY
Memoria insuficiente. Se procesó el mensaje NOERROR y se realizó alguna acción.
S_FALSE
No se procesó el mensaje. Normalmente, indica que el autor de la llamada debe procesar el propio mensaje, posiblemente mediante una llamada a DefWindowProc.
S_MSG_KEYIGNORED
Mensaje procesado, pero no se realizó ninguna acción para la pulsación de tecla.

Comentarios

Tenga en cuenta que se devuelven dos valores devueltos desde esta función. El valor devuelto que se debe devolver desde un procedimiento de ventana es plresult. Sin embargo, en algunos casos, el LRESULT devuelto no contiene suficiente información. Por ejemplo, para implementar el movimiento del cursor alrededor de los controles, es útil saber si se procesó una pulsación de tecla (como la flecha derecha) pero se omitió (por ejemplo, el símbolo de intercalación ya está en la posición más a la derecha del texto). En estos casos, se puede devolver más información a través del HRESULT devuelto.

WM_CHAR y WM_KEYDOWN deben devolver el valor S_MSG_KEYIGNORED cuando se reconoce una clave o un carácter, pero no tiene ningún efecto, dado el estado actual. Por ejemplo, S_MSG_KEYIGNORED se debe devolver en los casos siguientes:

  • Cualquier pulsación de tecla que intente mover el punto de inserción hacia o más allá del principio o el final del documento; cuando ya está al principio o al final del documento, respectivamente.
  • Cualquier pulsación de tecla que intente mover el punto de inserción a o más allá de la siguiente línea cuando ya está en la última línea; o a o antes de la línea anterior cuando ya está en la primera línea.
  • Cualquier inserción del carácter de WM_CHAR que movería el punto de inserción más allá de la longitud máxima del control.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado textserv.h
Archivo DLL Msftedit.dll

Consulte también

Conceptual

DefWindowProc

ITextServices

Otros recursos

WM_CHAR

WM_KEYDOWN

Controles de edición enriquecida sin ventanas