Donner le focus à un TFindDialog [Résolu]

Signaler
Messages postés
256
Date d'inscription
samedi 3 janvier 2004
Statut
Membre
Dernière intervention
30 mai 2016
-
Messages postés
256
Date d'inscription
samedi 3 janvier 2004
Statut
Membre
Dernière intervention
30 mai 2016
-
Bonjour à tous,

Voila, je suis entrain de faire un programme pour créer des:
- Fanfictions
- Romans etc...

Le programme se compose donc de 2 parties:
- L'organigramme de fanfictions/romans
- La rédaction

Vous allez me dire, quel est l'interet de cela ? Ben en fait cela permet de mieu s'organiser dans ce que l'ont fait.

Venons en à mon problème, j'ai un TRichEdit, un TTreeView et un TFindDialog.
Quand je fais une recherche sur mon TRichEdit, dès que j'ai cliqué sur Suivant, pour pouvoir afficher dans le TRichEdit en surbrillance(sélectionné) le mot trouvé, je doit passer par un SetFocus sur le TRichEdit.
Je voudrais pouvoir faire donc mon SetFocus sur le TRichEdit, sélectioner le mot pour montrer l'endroit où il est trouvé, et ensuite rendre le focus au TFindDialog.

J'ai vu qu'il y a pas de SetFocus ou équivalent pour le TFindDialog, j'aimerais donc savoir si certains ont une solution comme l'utilisation de l'API Win32 ?
Et dans ce cas là, quel fonction de l'API utilisé ? Car j'ai encore jamais utilisé l'API Win32 sauf pour ShelleExecute ;)

Merci d'avanceà celui qui pourra m'aider.

5 réponses

Messages postés
814
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
salut,

aRichEdit.HideSelection := false;

devrait résoudre ton problème.

A+

Loda
<hr size="2" width="100%" />Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.
Messages postés
256
Date d'inscription
samedi 3 janvier 2004
Statut
Membre
Dernière intervention
30 mai 2016
4
Salut Loda,

Merci pour la réponse si rapide.
Je viens d'essayer, cela change absoluement rien, mon TFindDialog ne reprend toujours pas le focus.
Messages postés
3826
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
10 mai 2021
42
Salut,

Essaye avec ceci :

  SetActiveWindow(FindDialog1.Handle);

 
@+
Cirec

<hr size="2" />
Messages postés
3826
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
10 mai 2021
42
ps: avec la méthode proposé par Loda
tu devrais pouvoir te passer du SetFocus sur le RichEdit (pour afficher l'élément trouvé) et du coup
plus besoin de SetActiveWindow

 
@+
Cirec

<hr size="2" />
Messages postés
256
Date d'inscription
samedi 3 janvier 2004
Statut
Membre
Dernière intervention
30 mai 2016
4
Je viens d'essayer en enlevant le setfocus et en mettant HideSelection à False, ca marche.

Merci à vous 2.