begin process at 2010 02 10 06:53:32
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Pour les balèzes - Problème de rafraîchissement de boîte de dialogue.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Pour les balèzes - Problème de rafraîchissement de boîte de dialogue.

jeudi 16 septembre 2004 à 11:17:18 | Pour les balèzes - Problème de rafraîchissement de boîte de dialogue.

liv

Bonjour,

J'ai un problème assez désagréable au niveau du rafraîchissement de ma boîte de dialogue lorsque j'effectue un redimensionnement.
Je m'explique...

-1- J'ai une boîte de dialogue permettant de lire des fichiers vidéo.

-2- Des boutons de type CBitmapButton sont placés en dessous de ma zone d'affichage de la vidéo.

-3- Un rectangle CRect m_cadreB est définit au niveau de mes boutons dans la fonction OnPaint() afin de définir une zone grahique dans laquelle seront intégrées, soit une image, soit une couleur de fond différentes du reste de l'application.

Code:
m_cadreB.SetRect(0,rect.bottom-40,rect.right,rect.bottom);
CBrush fond_cadreB(RGB(237,237,237));
dc.FillRect( &m_cadreB, &fond_cadreB);


-4- Afin de respecter les bonnes proportions d'affichage de mon rectangle et de mes boutons lors d'un redimensionnement de ma Dlg, je force l'appel à OnPaint() grâce à la fonction InvalidateRect(m_cadreB, TRUE); à la fin de OnSize().

PROBLEME
La fonction InvalideRect() est bien pratique voir même indispensable, sauf qu'elle provoque un scintillement très désagréable au niveau de la zone du rectangle et plus particulièrement au niveau de mes boutons, à chaque fois que je redimensionne ma Dlg.

J'imagine que ce problème n'est pas nouveau pour la pluspart d'entre vous, mais moi je galère.
Je comprends sa cause...à chaque fois que je redimensionne ma Dlg, Windows se tape tous les calculs de position pour tous mes éléments définis dans OnPaint();

Est-ce qu'il y aurait quelqu'un de balèze pour m'aider ?
jeudi 16 septembre 2004 à 19:57:59 | Re : Pour les balèzes - Problème de rafraîchissement de boîte de dialogue.

PrX

Salut,

S'il s'agit seulement de remettre la video a la bonne taille un
Invalidate(FALSE)
suffit.

Si, par contre, il faut remapper toute la fenetre, un
Invalidate(TRUE)
est obligatoire.
Le probleme est que, alors la video clignote, et qu'il n"y a pas a priori de solution, comme tu l'a dis, Windows est oblige de calculer

Essaie donc la premiere solution sinon prends ton mal en patiente.

PrX, [bold]Always dream your future![/bold]
vendredi 17 septembre 2004 à 09:26:56 | Re : Pour les balèzes - Problème de rafraîchissement de boîte de dialogue.

liv

Je vais prendre mon mal en patience alors...parceque je crois avoir tout essayé.


Cette discussion est classée dans : problème, dialogue, niveau, boîte, cadreb


Répondre à ce message

Sujets en rapport avec ce message

Problème avec la barre de progres [ par Kinkajou ] Bonjour,Voila j'ai crée une petite application qui lance un boîte de dialogue puis effectue un gros calcul en affichant la progression dans une barre Boîte de dialogue sans fichier .RC [ par Jeffray ] Bonjour,J'apprends la programmation win32 et j'utilise le compilateur gratuit de Borland (bcc55).Pour le moment, j'ai créé une fenêtre principale avec Boîte de dialogue dans une dll [ par Mad_Doc ] Bonjour,Je souhaiterais, à l'initialisation d'une dll, afficher une boîte de dialogue contenant un texte pendant une dizaine de secondes.Quelqu'un a d Problème avec un Bitmap [ par nauss ] Je veux afficher un bitmap en niveau de gris sous visual C++ en MFC.Pour l'instant j'arrive à l'afficher mais en niveau de rouge!!Y doit y avoir une h Dialogue à onglets [ par bzouli ] Bonjour,j'ai un problème: je veux faire une boite de dialogue avec 2 onglets, et ce n'est vraiment pas intuitif en VC++ !!J'ai créer mes deux classes MFC & OpenGL [ par wallid23 ] Voila j'ai crée une boîte de dialogue sous MFC puis j'ai inséré une fenêtre Opengl.J'ai plusieurs champs dans ma boître de dialogue et lorsque que je Boîte de dialogue à onglet [ par koiki ] Bonjour,Quelqu'un saurait-il comment "capturer" les messages des boutons Ok et Cancel qui sont générés dynamiquement par la classe CPropertySheet d'un PB de positionnement d'une boîte de dialogue.... [ par liv ] Bonjour à tous,Voilà....j'ai une boîte de dialogue principale (corps de mon programme) et je cré une enfant (classique et non modale)...J'aimerai lors bitmap qui n'apparait plus [ par oceax ] Hello !J'ai un big problème sous VC++,Je crée une boite de dialogue avec une bitmap dedans, je compile tout se passe bien mon image est bien place !!C Probleme d affichage boite de dialogue et directdraw [ par Otacon87 ] Salut, j'ai un problème je programme en mfc sous msvc6 et je fait une animation avec directdraw. Il faut que j'affiche l'animation en plein écran et


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,468 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales