Partager via


FINDREPLACEW, structure (commdlg.h)

Contient des informations que les fonctions FindText et ReplaceText utilisent pour initialiser les boîtes de dialogue Rechercher et Remplacer. Le message inscrit FINDMSGSTRING utilise cette structure pour transmettre l’entrée de recherche ou de remplacement de l’utilisateur à la fenêtre propriétaire d'une boîte de dialogue Rechercher ou Remplacer.

Syntaxe

typedef struct tagFINDREPLACEW {
  DWORD        lStructSize;
  HWND         hwndOwner;
  HINSTANCE    hInstance;
  DWORD        Flags;
  LPWSTR       lpstrFindWhat;
  LPWSTR       lpstrReplaceWith;
  WORD         wFindWhatLen;
  WORD         wReplaceWithLen;
  LPARAM       lCustData;
  LPFRHOOKPROC lpfnHook;
  LPCWSTR      lpTemplateName;
} FINDREPLACEW, *LPFINDREPLACEW;

Membres

lStructSize

Type : DWORD

Longueur, en octets, de la structure.

hwndOwner

Type : HWND

Handle de la fenêtre propriétaire de la boîte de dialogue. La procédure de fenêtre de la fenêtre spécifiée reçoit FINDMSGSTRING messages de la boîte de dialogue. Ce membre peut être n’importe quel handle de fenêtre valide, mais il ne doit pas être null.

hInstance

Type : HINSTANCE

Si l’indicateur FR_ENABLETEMPLATEHANDLE est défini dans leindicateurs de , hInstance est un handle sur un objet mémoire contenant un modèle de boîte de dialogue. Si l’indicateur FR_ENABLETEMPLATE est défini, hInstance est un handle pour un module qui contient un modèle de boîte de dialogue nommé par le membre lpTemplateName. Si aucun indicateur n’est défini, ce membre est ignoré.

Flags

Type : DWORD

Ensemble d’indicateurs de bits que vous pouvez utiliser pour initialiser la boîte de dialogue. La boîte de dialogue définit ces indicateurs lorsqu’il envoie le message FINDMSGSTRING inscrit pour indiquer l’entrée de l’utilisateur. Ce membre peut être une ou plusieurs des valeurs suivantes.

Valeur Signification
FR_DIALOGTERM
0x00000040
Si la valeur est définie dans un message FINDMSGSTRING, indique que la boîte de dialogue se ferme. Lorsque vous recevez un message avec ce jeu d’indicateurs, la poignée de boîte de dialogue retournée par la fonction FindText ou ReplaceText n’est plus valide.
FR_DOWN
0x00000001
Si cette option est définie, le bouton Bas des cases d’option direction dans une boîte de dialogue Rechercher est sélectionné pour indiquer que vous devez effectuer une recherche à partir de l’emplacement actuel jusqu’à la fin du document. Si ce n’est pas le cas, le bouton Haut est sélectionné. Vous devez donc effectuer une recherche au début du document. Vous pouvez définir cet indicateur pour initialiser la boîte de dialogue. Si elle est définie dans un message FINDMSGSTRING, indique la sélection de l’utilisateur.
FR_ENABLEHOOK
0x00000100
Active la fonction de hook spécifiée dans le membre lpfnHook. Cet indicateur est utilisé uniquement pour initialiser la boîte de dialogue.
FR_ENABLETEMPLATE
0x00000200
Indique que les hInstance et lpTemplateName membres spécifient un modèle de boîte de dialogue à utiliser à la place du modèle par défaut. Cet indicateur est utilisé uniquement pour initialiser la boîte de dialogue.
FR_ENABLETEMPLATEHANDLE
0x00002000
Indique que le membre hInstance identifie un bloc de données qui contient un modèle de boîte de dialogue préchargé. Le système ignore le membre lpTemplateName si cet indicateur est spécifié.
FR_FINDNEXT
0x00000008
Si la valeur est définie dans un message FINDMSGSTRING, l’utilisateur a cliqué sur le bouton Rechercher suivant dans une boîte de dialogue Rechercher ou Remplacer boîte de dialogue. Le membre lpstrFindWhat spécifie la chaîne à rechercher.
FR_HIDEUPDOWN
0x00004000
Si cette option est définie lors de l’initialisation d’une boîte de dialogue Rechercher, masque les cases d’option de direction de recherche.
FR_HIDEMATCHCASE
0x00008000
Si la valeur est définie lors de l’initialisation d’un Rechercher ou boîte de dialogue Remplacer, masque la case Correspondance case.
FR_HIDEWHOLEWORD
0x00010000
Si cette option est définie lors de l’initialisation d’un Rechercher ou boîte de dialogue Remplacer, masque la case à cocher Faire correspondre le mot entier uniquement.
FR_MATCHCASE
0x00000004
Si cette option est définie, la case à cocher Match Case est cochée indiquant que la recherche doit être sensible à la casse. Si elle n’est pas définie, la case à cocher n’est pas sélectionnée afin que la recherche ne respecte pas la casse. Vous pouvez définir cet indicateur pour initialiser la boîte de dialogue. Si elle est définie dans un message FINDMSGSTRING, indique la sélection de l’utilisateur.
FR_NOMATCHCASE
0x00000800
Si la valeur est définie lors de l’initialisation d’un Rechercher ou boîte de dialogue Remplacer, désactive la case Correspondance case.
FR_NOUPDOWN
0x00000400
Si cette option est définie lors de l’initialisation d’un boîte de dialogue Rechercher, désactive les cases d’option de direction de recherche.
FR_NOWHOLEWORD
0x00001000
Si la valeur est définie lors de l’initialisation d’un Rechercher ou boîte de dialogue Remplacer, désactive la case Word entier.
FR_REPLACE
0x00000010
Si la valeur est définie dans un message FINDMSGSTRING, indique que l’utilisateur a cliqué sur le bouton Remplacer dans une boîte de dialogue Remplacer. Le membre lpstrFindWhat spécifie la chaîne à remplacer et le membre lpstrReplaceWith spécifie la chaîne de remplacement.
FR_REPLACEALL
0x00000020
Si la valeur est définie dans un message FINDMSGSTRING, indique que l’utilisateur a cliqué sur le bouton Remplacer tout dans une boîte de dialogue Remplacer. Le membre lpstrFindWhat spécifie la chaîne à remplacer et le membre lpstrReplaceWith spécifie la chaîne de remplacement.
FR_SHOWHELP
0x00000080
Provoque l’affichage de la boîte de dialogue bouton Aide. Le membre hwndOwner doit spécifier la fenêtre pour recevoir les messages inscrits HELPMSGSTRING que la boîte de dialogue envoie lorsque l’utilisateur clique sur le bouton Aide.
FR_WHOLEWORD
0x00000002
Si cette option est définie, la case à cocher Mettre en correspondance le mot entier uniquement est cochée pour indiquer que vous devez rechercher uniquement des mots entiers qui correspondent à la chaîne de recherche. Si elle n’est pas définie, la case à cocher n’est pas sélectionnée. Vous devez donc également rechercher des fragments de mots qui correspondent à la chaîne de recherche. Vous pouvez définir cet indicateur pour initialiser la boîte de dialogue. Si elle est définie dans un message FINDMSGSTRING, indique la sélection de l’utilisateur.

lpstrFindWhat

Type : LPTSTR

Chaîne de recherche que l’utilisateur a tapée dans le Rechercher ce que contrôle d’édition. Vous devez allouer dynamiquement la mémoire tampon ou utiliser un tableau global ou statique afin qu’il ne sorte pas de portée avant la fermeture de la boîte de dialogue. La mémoire tampon doit comporter au moins 80 caractères. Si la mémoire tampon contient une chaîne lorsque vous initialisez la boîte de dialogue, la chaîne s’affiche dans la Rechercher ce que contrôle d’édition. Si un message FINDMSGSTRING spécifie l’indicateur FR_FINDNEXT, lpstrFindWhat contient la chaîne à rechercher. Les indicateurs FR_DOWN, FR_WHOLEWORDet FR_MATCHCASE indiquent la direction et le type de recherche. Si un message FINDMSGSTRING spécifie les indicateurs FR_REPLACE ou FR_REPLACE, lpstrFindWhat contient la chaîne à remplacer.

lpstrReplaceWith

Type : LPTSTR

Chaîne de remplacement que l’utilisateur a tapée dans la Remplacer par contrôle d’édition. Vous devez allouer dynamiquement la mémoire tampon ou utiliser un tableau global ou statique afin qu’il ne sorte pas de portée avant la fermeture de la boîte de dialogue. Si la mémoire tampon contient une chaîne lorsque vous initialisez la boîte de dialogue, la chaîne s’affiche dans la Remplacer par contrôle d’édition.

Si un message FINDMSGSTRING spécifie les indicateurs FR_REPLACE ou FR_REPLACEALL, lpstrReplaceWith contient la chaîne de remplacement.

La fonction FindText ignore ce membre.

wFindWhatLen

Type : WORD

Longueur, en octets, de la mémoire tampon pointée par le membre lpstrFindWhat.

wReplaceWithLen

Type : WORD

Longueur, en octets, de la mémoire tampon pointée par le membre lpstrReplaceWith.

lCustData

Type : LPARAM

Données définies par l’application que le système transmet à la procédure de raccordement identifiée par le membre lpfnH ook. Lorsque le système envoie le message WM_INITDIALOG à la procédure de raccordement, le paramètre lParam du message est un pointeur vers la structure FINDREPLACE spécifiée lors de la création de la boîte de dialogue. La procédure de raccordement peut utiliser ce pointeur pour obtenir la valeur lCustData.

lpfnHook

Type : LPFRHOOKPROC

Pointeur vers une procédure de raccordement FRHookProc qui peut traiter les messages destinés à la boîte de dialogue. Ce membre est ignoré, sauf si l’indicateur FR_ENABLEHOOK est défini dans le membre indicateurs. Si la procédure de raccordement retourne FALSE en réponse au message WM_INITDIALOG, la procédure de hook doit afficher la boîte de dialogue ou si la boîte de dialogue ne s’affiche pas. Pour ce faire, effectuez d’abord d’autres opérations de peinture, puis appelez les fonctions ShowWindow et UpdateWindow.

lpTemplateName

Type : LPCTSTR

Nom de la ressource de modèle de boîte de dialogue dans le module identifié par le membre hInstance. Ce modèle est remplacé par le modèle de boîte de dialogue standard. Pour les ressources de boîte de dialogue numérotées, il peut s’agir d’une valeur retournée par la macro MAKEINTRESOURCE. Ce membre est ignoré, sauf si l’indicateur FR_ENABLETEMPLATE est défini dans le membre Indicateurs.

Remarques

Note

L’en-tête commdlg.h définit FINDREPLACE comme 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.

Exigences

Exigence Valeur
client minimum pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
serveur minimum pris en charge Windows 2000 Server [applications de bureau uniquement]
d’en-tête commdlg.h (include Windows.h)

Voir aussi

bibliothèque de boîtes de dialogue courante

conceptuelle

FRHookProc

FindText

MAKEINTRESOURCE

de référence

ReplaceText

showWindow

WM_INITDIALOG