Rafraichissement d'une fenetre en API windows [Résolu]

Messages postés
36
Date d'inscription
dimanche 11 décembre 2005
Dernière intervention
17 février 2006
- - Dernière réponse : wxccxw
Messages postés
759
Date d'inscription
samedi 15 mai 2004
Dernière intervention
30 janvier 2011
- 13 févr. 2006 à 22:37
salut a tous
J'aimerai savoir comment on peut faire pour demander a une fenetre de rafraichir sa zone client en API windows C++.
par exemple quand on y affiche l'heure, car moi l'heure se met a jour seulement quand je redimensionne la fenetre -_-
Merci d'avance
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
Messages postés
759
Date d'inscription
samedi 15 mai 2004
Dernière intervention
30 janvier 2011
3
Merci
SetTimer et KillTimer
toute les secondes tu aura le message WM_TIMER

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 95 internautes nous ont dit merci ce mois-ci

Commenter la réponse de wxccxw
Messages postés
196
Date d'inscription
mercredi 6 août 2003
Dernière intervention
1 mai 2009
0
Merci
Salut
Utilise InvalidateRect(hFenetre, 0, FALSE);
Attention, cette fonction va entrainer l'évènement WM_PAINT, qui devra donc contenir le code affichant ton heure.
A+

LaPatoshe
Commenter la réponse de Lord_Patoche
Messages postés
36
Date d'inscription
dimanche 11 décembre 2005
Dernière intervention
17 février 2006
0
Merci
Merci à toi. Il y a de l'évolution.
mais j'ai mis InvalidateRect donc au tout debut de ma procédure de fenetre, mon code d'affichage dans case WM_PAINT, mais maintenant ma fenetre se rafraichit seulement en cas d'évenement quelconque. Moi j'aimerais qu'elle se rafraichisse tout le temps, évenement ou pas.
Commenter la réponse de poulpixx
Messages postés
196
Date d'inscription
mercredi 6 août 2003
Dernière intervention
1 mai 2009
0
Merci
InvalidateRect doit être utilisé au moment où tu veux faire apparaitre ton texte, donc une fois que ta fenêtre est affichée.
Maintenant, si tu veux que ta fenêtre se raffraichisse en permanence un peu comme on fait pour envoyer un rendu sous DirectX, places InvalidateRect dans la boucle GetMessage, mais ça va te bouffer un max de ressources.

LaPatoshe
Commenter la réponse de Lord_Patoche
Messages postés
36
Date d'inscription
dimanche 11 décembre 2005
Dernière intervention
17 février 2006
0
Merci
ah ok je vois j'ai éssayé ca marche mais il est vrai que ca bouffe toutes les ressources!
c bizarre quand meme.
Commenter la réponse de poulpixx
Messages postés
36
Date d'inscription
dimanche 11 décembre 2005
Dernière intervention
17 février 2006
0
Merci
en fait ce que je voudrais au final c'est que mon programme nous affiche une MessageBox à une heure demandée, mais cette MessageBox doit s'afficher meme si le programme est réduit, et qu'aucun évenement ne se produit. est-ce possible ou pas (pour ne pas que je me prenne le tete pour enfin me rendre compte que c'est impossible)
Commenter la réponse de poulpixx
Messages postés
106
Date d'inscription
mardi 11 novembre 2003
Dernière intervention
11 février 2008
0
Merci
Pour rafraichir ton horloge utilise un timer ca consommera beaucoup moins de ressources !!!
Par contre je m'en suis jamais servis alors consulte la doc msdn.
De plus je pense (a verifier !!) que le timer fonctionnera meme si ton prog est reduit.

voila a+
Commenter la réponse de spiky31

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.