Condividi tramite


Funzione FindTextA (commdlg.h)

Crea una finestra di dialogo Trova senza modalità definita dal sistema che consente all'utente di specificare una stringa da cercare e le opzioni da utilizzare durante la ricerca di testo in un documento.

Sintassi

HWND FindTextA(
  [in] LPFINDREPLACEA unnamedParam1
);

Parametri

[in] unnamedParam1

Tipo: LPFINDREPLACE

Puntatore a una struttura FINDREPLACE contenente informazioni utilizzate per inizializzare la finestra di dialogo. La finestra di dialogo usa questa struttura per inviare informazioni sull'input dell'utente all'applicazione. Per ulteriori informazioni, vedere la sezione Osservazioni successiva.

Valore restituito

Tipo: HWND

Se la funzione ha esito positivo, il valore restituito corrisponde all'handle della finestra di dialogo. È possibile usare l'handle di finestra per comunicare con o per chiudere la finestra di dialogo.

Se la funzione ha esito negativo, il valore restituito è NULL. Per ottenere informazioni sull'errore estese, chiamare la funzione CommDlgExtendedError . CommDlgExtendedError può restituire uno dei codici di errore seguenti:

Commenti

La funzione FindText non esegue un'operazione di ricerca. Al contrario, la finestra di dialogo invia i messaggi registrati FINDMSGSTRING alla procedura di finestra del proprietario della finestra di dialogo. Quando si crea la finestra di dialogo, il membro hwndOwner della struttura FINDREPLACE è un handle per la finestra del proprietario.

Prima di chiamare FindText, è necessario chiamare la funzione RegisterWindowMessage per ottenere l'identificatore per il messaggio FINDMSGSTRING . La procedura della finestra di dialogo utilizza questo identificatore per inviare messaggi quando l'utente fa clic sul pulsante Trova successivo o quando la finestra di dialogo viene chiusa. Il parametro lParam del messaggio FINDMSGSTRING contiene un puntatore a una struttura FINDREPLACE . Il membro Flags di questa struttura indica l'evento che ha causato il messaggio. Altri membri della struttura indicano l'input dell'utente.

Se si crea una finestra di dialogo Trova , è necessario utilizzare anche la funzione IsDialogMessage nel ciclo di messaggi principale dell'applicazione per assicurarsi che la finestra di dialogo elabori correttamente l'input della tastiera, ad esempio i tasti TAB e ESC. IsDialogMessage restituisce un valore che indica se la finestra di dialogo Trova ha elaborato il messaggio.

È possibile specificare una procedura hook FRHookProc per una finestra di dialogo Trova . La procedura hook può elaborare i messaggi inviati alla finestra di dialogo. Per abilitare una routine hook, impostare il flag FR_ENABLEHOOK nel membro Flags della struttura FINDREPLACE e specificare l'indirizzo della routine hook nel membro lpfnHook .

Esempio

Per un esempio, vedere Ricerca di testo.

Nota

L'intestazione commdlg.h definisce FindText 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 che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione commdlg.h (include Windows.h)
Libreria Comdlg32.lib
DLL Comdlg32.dll
Set di API ext-ms-win-shell-comdlg32-l1-1-1 (introdotto in Windows 10, versione 10.0.14393)

Vedi anche

CommDlgExtendedError

Libreria delle finestre di dialogo comuni

Informazioni concettuali

FINDMSGSTRING

FINDREPLACE

FRHookProc

IsDialogMessage

Riferimento

RegisterWindowMessage

ReplaceText