Condividi tramite


Funzione di callback EDITWORDBREAKPROCA (winuser.h)

Funzione di callback definita dall'applicazione usata con il messaggio di EM_SETWORDBREAKPROC. Un controllo di modifica su più righe o un controllo di modifica rtf chiama una funzione EditWordBreakProc per interrompere una riga di testo.

Il tipo EDITWORDBREAKPROC definisce un puntatore a questa funzione di callback. EditWordBreakProc è un segnaposto per il nome della funzione definita dall'applicazione.

Sintassi

EDITWORDBREAKPROCA Editwordbreakproca;

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

Parametri

[in] lpch

Tipo: LPTSTR

Puntatore al testo del controllo di modifica.

[in] ichCurrent

Tipo: int

Indice di una posizione di caratteri nel buffer di testo che identifica il punto in cui la funzione deve iniziare a controllare la presenza di un'interruzione di parola.

[in] cch

Tipo: int

Numero di TCHAR nel testo del controllo di modifica. Per il testo ANSI, questo è il numero di byte; per il testo Unicode, questo è il numero di WCHAR.

[in] code

Tipo: int

Azione da eseguire dalla funzione di callback. Questo parametro può essere uno dei valori seguenti.

Valore Significato
WB_CLASSIFY
Recupera la classe di caratteri e i flag di word break del carattere nella posizione specificata. Questo valore è destinato all'uso con controlli rich edit.
WB_ISDELIMITER
Controlla se il carattere in corrispondenza della posizione specificata è un delimitatore.
WB_LEFT
Trova l'inizio di una parola a sinistra della posizione specificata.
WB_LEFTBREAK
Trova il delimitatore di fine parola a sinistra della posizione specificata. Questo valore è destinato all'uso con controlli rich edit.
WB_MOVEWORDLEFT
Trova l'inizio di una parola a sinistra della posizione specificata. Questo valore viene usato durante l'elaborazione del tasto CTRL+SINISTRA. Questo valore è destinato all'uso con controlli rich edit.
WB_MOVEWORDRIGHT
Trova l'inizio di una parola a destra della posizione specificata. Questo valore viene utilizzato durante l'elaborazione del tasto CTRL+DESTRO. Questo valore è destinato all'uso con controlli rich edit.
WB_RIGHT
Trova l'inizio di una parola a destra della posizione specificata. Ciò è utile nei controlli di modifica allineati a destra.
WB_RIGHTBREAK
Trova il delimitatore di fine parola a destra della posizione specificata. Ciò è utile nei controlli di modifica allineati a destra. Questo valore è destinato all'uso con controlli rich edit.

Valore restituito

Tipo: int

Se il codice parametro specifica WB_ISDELIMITER, il valore restituito è diverso da zero (TRUE) se il carattere nella posizione specificata è un delimitatore o zero se non lo è. Se il codice parametro specifica WB_CLASSIFY, il valore restituito è la classe di caratteri e i flag di word break del carattere nella posizione specificata. In caso contrario, il valore restituito è un indice all'inizio di una parola nel buffer di testo.

Osservazioni

Un ritorno a capo seguito da un avanzamento riga deve essere considerato come una singola parola dalla funzione di callback. Anche due ritorni a capo seguiti da un avanzamento riga devono essere considerati come una singola parola.

Un'applicazione deve installare la funzione di callback specificando l'indirizzo della funzione di callback in un messaggio di EM_SETWORDBREAKPROC.

Rich Edit 1.0:Microsoft Rich Edit 1.0 passa solo caratteri ANSI a EditWordBreakProc. Per i controlli di modifica avanzati, è possibile usare in alternativa il messaggio EM_SETWORDBREAKPROCEX per sostituire la routine di word break estesa predefinita con una EditWordBreakProcEx funzione di callback. Questa funzione fornisce informazioni aggiuntive sul testo, ad esempio il set di caratteri.

Rich Edit 2.0 e versioni successive:Microsoft Rich Edit 2.0 e versioni successive passano solo i caratteri Unicode a EditWordBreakProc. Pertanto, un'applicazione ANSI converte la stringa Unicode fornita da Rich Edit usando WideCharToMultiBytee quindi converte gli indici in modo appropriato.

Nota

L'intestazione winuser.h definisce EDITWORDBREAKPROC come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows Vista [solo app desktop]
server minimo supportato Windows Server 2003 [solo app desktop]
piattaforma di destinazione Finestre
intestazione winuser.h (include Windows.h)

Vedere anche

EM_FINDWORDBREAK

EM_SETWORDBREAKPROC

EM_SETWORDBREAKPROCEX

EditWordBreakProcEx

altre risorse

riferimento

SendMessage