Partager via


Fonction ReplaceTextA (commdlg.h)

Crée une boîte de dialogue sans mode définie par le système qui permet à l’utilisateur de spécifier une chaîne à rechercher et une chaîne de remplacement, ainsi que des options pour contrôler les opérations de recherche et de remplacement.

Syntaxe

HWND ReplaceTextA(
  [in, out] LPFINDREPLACEA unnamedParam1
);

Paramètres

[in, out] unnamedParam1

Type : LPFINDREPLACE

Pointeur vers une structure FINDREPLACE qui contient les informations utilisées pour initialiser la boîte de dialogue. La boîte de dialogue utilise cette structure pour envoyer des informations sur l’entrée de l’utilisateur à votre application. Pour plus d'informations, consultez la section Notes qui suit.

Valeur retournée

Type : HWND

Si la fonction réussit, la valeur de retour est le handle de fenêtre de la boîte de dialogue. Vous pouvez utiliser le handle de fenêtre pour communiquer avec la boîte de dialogue ou la fermer.

Si la fonction échoue, la valeur de retour est NULL. Pour obtenir des informations d’erreur étendues, appelez la fonction CommDlgExtendedError , qui peut retourner l’un des codes d’erreur suivants :

Remarques

La fonction ReplaceText n’effectue pas d’opération de remplacement de texte. Au lieu de cela, la boîte de dialogue envoie les messages inscrits FINDMSGSTRING à la procédure de fenêtre de la fenêtre propriétaire de la boîte de dialogue. Lorsque vous créez la boîte de dialogue, le membre hwndOwner de la structure FINDREPLACE est un handle de la fenêtre propriétaire.

Avant d’appeler ReplaceText, vous devez appeler la fonction RegisterWindowMessage pour obtenir l’identificateur du message FINDMSGSTRING . La procédure de boîte de dialogue utilise cet identificateur pour envoyer des messages lorsque l’utilisateur clique sur les boutons Rechercher suivant, Remplacer ou Remplacer tout , ou lorsque la boîte de dialogue se ferme. Le paramètre lParam d’un message FINDMSGSTRING contient un pointeur vers la structure FINDREPLACE . Le membre Flags de cette structure indique l’événement à l’origine du message. Les autres membres de la structure indiquent l’entrée de l’utilisateur.

Si vous créez une boîte de dialogue Remplacer, vous devez également utiliser la fonction IsDialogMessage dans la boucle de message main de votre application pour vous assurer que la boîte de dialogue traite correctement les entrées du clavier, telles que les touches TAB et Échap. La fonction IsDialogMessage retourne une valeur qui indique si la boîte de dialogue Remplacer a traité le message.

Vous pouvez fournir une procédure de crochet FRHookProc pour une boîte de dialogue Remplacer . La procédure de hook peut traiter les messages envoyés à la boîte de dialogue. Pour activer une procédure de hook, définissez l’indicateur FR_ENABLEHOOK dans le membre Indicateurs de la structure FINDREPLACE et spécifiez l’adresse de la procédure de hook dans le membre lpfnHook .

Notes

L’en-tête commdlg.h définit ReplaceText comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête commdlg.h (inclure Windows.h)
Bibliothèque Comdlg32.lib
DLL Comdlg32.dll
Ensemble d’API ext-ms-win-shell-comdlg32-l1-1-1 (introduit dans Windows 10, version 10.0.14393)

Voir aussi

CommDlgExtendedError

Bibliothèque de boîtes de dialogue commune

Conceptuel

FINDREPLACE

FRHookProc

IsDialogMessage

Référence

RegisterWindowMessage

WM_CTLCOLORDLG