Appeler du code après que la Dialog soit chargée

Nixeus Messages postés 192 Date d'inscription jeudi 18 janvier 2007 Statut Membre Dernière intervention 19 octobre 2020 - 16 juil. 2009 à 16:51
racpp Messages postés 1909 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 - 17 juil. 2009 à 21:26
Bonjour à tous,


Cela fais deux ans que je n'ai pas repratiqué de C++ en MFC? et j'ai beaucoup perdu.

Je souhaite appeller du code une fois que me Dialog est chargée, comment faire ?

IniDialog c'est trop tôt
OnActivate c'est à chaque focus
OnShowWindow c'est trop tôt

Quand je dit "trop tôt", je veux dire que la Dialog n'est pas encore affichée, et que dans mon cas, cela ne me va pas :)

Merci à tous.

Cordialement,

Nixeus'

5 réponses

BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 103
17 juil. 2009 à 09:26
Hello,
Quel genre de traitement fait que le mettre dans initDialog, c'est "trop tot"?



@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
0
Nixeus Messages postés 192 Date d'inscription jeudi 18 janvier 2007 Statut Membre Dernière intervention 19 octobre 2020
17 juil. 2009 à 10:20
Bonjour,

EN fait, je veux faire un traitement sur un fichier ( découpage,etc...) et gérer l'affichage et la progression d'une progressBar.

Nixeus'
0
BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 103
17 juil. 2009 à 10:51
Ok...
Je vois 2 solutions:
- mettre un bouton sur ta dialog, qui déclenchera le traitement du fichier
- lancer un thread dans le initDialog qui enverra des messages de mises à jour à ta dialog


@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
0
Nixeus Messages postés 192 Date d'inscription jeudi 18 janvier 2007 Statut Membre Dernière intervention 19 octobre 2020
17 juil. 2009 à 11:02
MMM

Je pense que je vais faire cela en passant par un bouton, meme si cela ne m'enchante pas trop, j'aurai aimé que le traitement se lance tout seul, je ne vois pas trop comment faire avec le thread.

Merci :)

Nixeus'
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
racpp Messages postés 1909 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 17
17 juil. 2009 à 21:26
Salut,
En Win32 il existe le message WM_WINDOWPOSCHANGED permettant de savoir si la boite de dialogue a été affiché. Ainsi tu peux lancer ton traitement en étant sûr que la boite est déjà affichée. Il est en plus possible d'utiliser un flag pour ne lancer ce traitement que si la boite s'affiche suite à sa création. Tu peux regarder mon code source proposant une boite de dialogue de progression utilisant ce message:
BOITE-DIALOGUE-PROGRESSION
Je pense que c'est très facilement adaptable en MFC.
0
Rejoignez-nous