Función de devolución de llamada EDITWORDBREAKPROCA (winuser.h)

Función de devolución de llamada definida por la aplicación que se usa con el mensaje EM_SETWORDBREAKPROC . Un control de edición multilínea o un control de edición enriquecido llama a una función EditWordBreakProc para interrumpir una línea de texto.

El tipo EDITWORDBREAKPROC define un puntero a esta función de devolución de llamada. EditWordBreakProc es un marcador de posición para el nombre de función definido por la aplicación.

Sintaxis

EDITWORDBREAKPROCA Editwordbreakproca;

int Editwordbreakproca(
  [in] LPSTR lpch,
  [in] int ichCurrent,
  [in] int cch,
  [in] int code
)
{...}

Parámetros

[in] lpch

Tipo: LPTSTR

Puntero al texto del control de edición.

[in] ichCurrent

Tipo: int

Índice a una posición de carácter en el búfer de texto que identifica el punto en el que la función debe comenzar a comprobar si hay un salto de palabra.

[in] cch

Tipo: int

Número de TCHAR en el texto del control de edición. Para el texto ANSI, este es el número de bytes; para el texto Unicode, este es el número de WCHAR.

[in] code

Tipo: int

La acción que realizará la función de devolución de llamada. Este parámetro puede ser uno de los valores siguientes.

Valor Significado
WB_CLASSIFY
Recupera la clase de caracteres y las marcas de salto de palabra del carácter en la posición especificada. Este valor se usa con controles de edición enriquecidos.
WB_ISDELIMITER
Comprueba si el carácter de la posición especificada es un delimitador.
WB_LEFT
Busca el principio de una palabra a la izquierda de la posición especificada.
WB_LEFTBREAK
Busca el delimitador de final de palabra a la izquierda de la posición especificada. Este valor se usa con controles de edición enriquecidos.
WB_MOVEWORDLEFT
Busca el principio de una palabra a la izquierda de la posición especificada. Este valor se usa durante el procesamiento de teclas CTRL+LEFT. Este valor se usa con controles de edición enriquecidos.
WB_MOVEWORDRIGHT
Busca el principio de una palabra a la derecha de la posición especificada. Este valor se usa durante el procesamiento de teclas CTRL+RIGHT. Este valor se usa con controles de edición enriquecidos.
WB_RIGHT
Busca el principio de una palabra a la derecha de la posición especificada. Esto es útil en los controles de edición alineados a la derecha.
WB_RIGHTBREAK
Busca el delimitador de fin de palabra a la derecha de la posición especificada. Esto es útil en los controles de edición alineados a la derecha. Este valor se usa con controles de edición enriquecidos.

Valor devuelto

Tipo: int

Si el parámetro de código especifica WB_ISDELIMITER, el valor devuelto es distinto de cero (TRUE) si el carácter de la posición especificada es un delimitador o cero si no lo es. Si el parámetro de código especifica WB_CLASSIFY, el valor devuelto es la clase de caracteres y las marcas de salto de palabra del carácter en la posición especificada. De lo contrario, el valor devuelto es un índice al principio de una palabra en el búfer de texto.

Comentarios

Un retorno de carro seguido de una fuente de línea debe tratarse como una sola palabra por la función de devolución de llamada. Dos retornos de carro seguidos de una fuente de línea también deben tratarse como una sola palabra.

Una aplicación debe instalar la función de devolución de llamada especificando la dirección de la función de devolución de llamada en un mensaje EM_SETWORDBREAKPROC .

Edición enriquecida 1.0:Microsoft Rich Edit 1.0 solo pasa caracteres ANSI a EditWordBreakProc. Para los controles de edición enriquecidos, puede usar alternativamente el mensaje de EM_SETWORDBREAKPROCEX para reemplazar el procedimiento de interrupción de palabra extendida predeterminado por una función de devolución de llamada EditWordBreakProcEx . Esta función proporciona información adicional sobre el texto, como el juego de caracteres.

Rich Edit 2.0 y versiones posteriores:Microsoft Rich Edit 2.0 y versiones posteriores solo pasan caracteres Unicode a EditWordBreakProc. Por lo tanto, una aplicación ANSI convertiría la cadena Unicode proporcionada por Rich Edit mediante WideCharToMultiByte y, a continuación, traduciría los índices correctamente.

Nota

El encabezado winuser.h define EDITWORDBREAKPROC como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

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 winuser.h (incluir Windows.h)

Consulte también

EM_FINDWORDBREAK

EM_SETWORDBREAKPROC

EM_SETWORDBREAKPROCEX

EditWordBreakProcEx

Otros recursos

Referencia

SendMessage