Função de retorno de chamada EDITWORDBREAKPROCW (winuser.h)

Uma função de retorno de chamada definida pelo aplicativo usada com a mensagem EM_SETWORDBREAKPROC . Um controle de edição multilinha ou um controle de edição avançada chama uma função EditWordBreakProc para quebrar uma linha de texto.

O tipo EDITWORDBREAKPROC define um ponteiro para essa função de retorno de chamada. EditWordBreakProc é um espaço reservado para o nome da função definida pelo aplicativo.

Sintaxe

EDITWORDBREAKPROCW Editwordbreakprocw;

int Editwordbreakprocw(
  [in] LPWSTR lpch,
  [in] int ichCurrent,
  [in] int cch,
  [in] int code
)
{...}

Parâmetros

[in] lpch

Tipo: LPTSTR

Um ponteiro para o texto do controle de edição.

[in] ichCurrent

Tipo: int

Um índice para uma posição de caractere no buffer de texto que identifica o ponto no qual a função deve começar a verificar uma quebra de palavra.

[in] cch

Tipo: int

O número de TCHARs no texto de controle de edição. Para o texto ANSI, esse é o número de bytes; para o texto Unicode, esse é o número de WCHARs.

[in] code

Tipo: int

A ação a ser executada pela função de retorno de chamada. Esse parâmetro pode usar um dos valores a seguir.

Valor Significado
WB_CLASSIFY
Recupera os sinalizadores de quebra de palavra e classe de caractere do caractere na posição especificada. Esse valor é para uso com controles de edição avançada.
WB_ISDELIMITER
Verifica se o caractere na posição especificada é um delimitador.
WB_LEFT
Localiza o início de uma palavra à esquerda da posição especificada.
WB_LEFTBREAK
Localiza o delimitador de fim de palavra à esquerda da posição especificada. Esse valor é para uso com controles de edição avançada.
WB_MOVEWORDLEFT
Localiza o início de uma palavra à esquerda da posição especificada. Esse valor é usado durante o processamento de teclas CTRL+LEFT. Esse valor é para uso com controles de edição avançada.
WB_MOVEWORDRIGHT
Localiza o início de uma palavra à direita da posição especificada. Esse valor é usado durante o processamento de teclas CTRL+RIGHT. Esse valor é para uso com controles de edição avançada.
WB_RIGHT
Localiza o início de uma palavra à direita da posição especificada. Isso é útil em controles de edição alinhados à direita.
WB_RIGHTBREAK
Localiza o delimitador de fim de palavra à direita da posição especificada. Isso é útil em controles de edição alinhados à direita. Esse valor é para uso com controles de edição avançada.

Retornar valor

Tipo: int

Se o parâmetro de códigoespecificar WB_ISDELIMITER, o valor retornado será diferente de zero (TRUE) se o caractere na posição especificada for um delimitador ou zero se não for. Se o parâmetro de códigoespecificar WB_CLASSIFY, o valor retornado será a classe de caracteres e os sinalizadores de quebra de palavra do caractere na posição especificada. Caso contrário, o valor retornado será um índice para o início de uma palavra no buffer de texto.

Comentários

Um retorno de carro seguido de um feed de linha deve ser tratado como uma única palavra pela função de retorno de chamada. Dois retornos de carro seguidos por um feed de linha também devem ser tratados como uma única palavra.

Um aplicativo deve instalar a função de retorno de chamada especificando o endereço da função de retorno de chamada em uma mensagem de EM_SETWORDBREAKPROC .

Edição Avançada 1.0:O Microsoft Rich Edit 1.0 só passa caracteres ANSI para EditWordBreakProc. Para controles de edição avançada, você pode alternar usar a mensagem EM_SETWORDBREAKPROCEX para substituir o procedimento de quebra de palavra estendido padrão por uma função de retorno de chamada EditWordBreakProcEx . Essa função fornece informações adicionais sobre o texto, como o conjunto de caracteres.

Edição Avançada 2.0 e posterior:O Microsoft Rich Edit 2.0 e posterior só transmite caracteres Unicode para EditWordBreakProc. Assim, um aplicativo ANSI converteria a cadeia de caracteres Unicode fornecida por Edição Avançada usando WideCharToMultiByte e traduziria os índices adequadamente.

Observação

O cabeçalho winuser.h define EDITWORDBREAKPROC como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho winuser.h (inclua Windows.h)

Confira também

EM_FINDWORDBREAK

EM_SETWORDBREAKPROC

EM_SETWORDBREAKPROCEX

EditWordBreakProcEx

Outros recursos

Referência

SendMessage