Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2916 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  [Résolu] wxWidgets clignottement au resize

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Résolu] wxWidgets clignottement au resize

n°940602
raytaller
Posté le 07-01-2005 à 19:15:26  profilanswer
 

Pourquoi quand je redimmentionne ma fenêtre que j'ai compilée moi même, y'a toute la surface qui clignotte, alors que le "preview" de glade me montre une fenêtre qui se redimentionne parfaitement ?
 
une histoire de buffering ?


Message édité par raytaller le 10-01-2005 à 00:27:17
mood
Publicité
Posté le 07-01-2005 à 19:15:26  profilanswer
 

n°940653
HelloWorld
Salut tout le monde!
Posté le 07-01-2005 à 20:15:47  profilanswer
 

Sous Windows je suppose. C'est parce que le fond est effacé avant que ta fenêtre se redessine, ce qui fait qu'on voit tout blanc un court instant et provoque ce flash. Essaye de spécifier le style wxNO_FULL_REPAINT_ON_RESIZE  lors de la création de ta fenêtre.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°949342
raytaller
Posté le 08-01-2005 à 21:58:28  profilanswer
 

il faut que je l'applique à tous les widgets ou juste la frame ? parce que là, la frame toute seule, ça fait rien

n°949344
HelloWorld
Salut tout le monde!
Posté le 08-01-2005 à 22:02:20  profilanswer
 

Quel OS ?


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°949348
raytaller
Posté le 08-01-2005 à 22:08:27  profilanswer
 

XP

n°949350
HelloWorld
Salut tout le monde!
Posté le 08-01-2005 à 22:13:50  profilanswer
 

Et une frame seule ça supprime pas son clignotement de spécifier wxNO_FULL_REPAINT_ON_RESIZE ?


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°949357
raytaller
Posté le 08-01-2005 à 22:27:55  profilanswer
 

this->mainFrame = new AttractorsMainFrame(0, -1, _T("Attractors" ),wxDefaultPosition,wxDefaultSize,wxNO_FULL_REPAINT_ON_RESIZE|wxDEFAULT_FRAME_STYLE);
 
bah la frame, elle glignotte pas, c'est tous les widgets qui clignottent
 
j'veux dire, le fond gris, il reste gris, y'apa de blanc, mais par contre, les champs blancs on les voit clignotter sur le fond gris

n°949365
Lam's
Profil: bas.
Posté le 08-01-2005 à 23:07:46  profilanswer
 

A tout hasard, rajoute aussi un wxCLIP_CHILDREN de bon aloi.
 
Et essaye eventuellement de capturer l'évènement   EVT_ERASE_BACKGROUND(AttractorsMainFrame::OnEraseBackGround)
 
avec un modeste:
void AttractorMainFrame::OnEraseBackGround(wxEraseEvent& event)
{
}
 
Si ça ne marche toujours pas, c'est zarbouille. Utilises-tu des sizers ?

n°949384
raytaller
Posté le 08-01-2005 à 23:35:55  profilanswer
 

je vais tenter ça, mais en attendnant, de répondre : oui, je n'utilise que des sizers
je début en wxWidgets en fait, et, étant habitué à swing, j'ai trouvé ma joie avec les sizers

n°949393
raytaller
Posté le 09-01-2005 à 00:14:54  profilanswer
 

bon, j'ai rajouté mon EVT_ERASE_BACKGROUND(AttractorsMainFrame::OnEraseBackGround) dans la table, le clip_children, mais nan ça clignotte toujours à mort, en fait, on voit alternativement le fond gris, les widgets, un fond gris, les widgets, mais que pendant que je redimentionne
 
de toutes façons, c'est pas très très grave, mais ce qui me fout les boules c'est que quand je fais le preview dans Glade, là c'est vraiment fluide, et je comprends pas pourquoi

mood
Publicité
Posté le 09-01-2005 à 00:14:54  profilanswer
 

n°949628
HelloWorld
Salut tout le monde!
Posté le 09-01-2005 à 22:09:57  profilanswer
 

Essaye d'appliquer wxNO_FULL_REPAINT_ON_RESIZE sur les sizers.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°949638
Lam's
Profil: bas.
Posté le 09-01-2005 à 22:16:12  profilanswer
 

sur les panels plutôt, non ? Il me semble qu'il ne le met que sur sa Frame principale...

n°949650
HelloWorld
Salut tout le monde!
Posté le 09-01-2005 à 22:28:44  profilanswer
 

Oui, j'ai confondu avec wxSplitterWindow. Oublie ce que j'ai dit.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°949700
raytaller
Posté le 10-01-2005 à 00:25:04  profilanswer
 

AH YAISSE, wxNO_FULL_REPAINT_ON_RESIZE sur les panels, ça résout exactement ce problème
 
enfin bon, y'a quand même des endroits qu'il faut redessiner mais au moins ça fait plus clignotter toute la frame  
 
 
bon bah super, merci :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  [Résolu] wxWidgets clignottement au resize

 

Sujets relatifs
Ajouter un nombre d'heures à un TDateTime, Résolu[résolu] OnSubmit et la validation
[php5] Bloquer l'erreur d'un include/require [résolu][Java] Mettre une image de fond dans un container [Resolu]
[OpenGL] Probleme avec le rouge ... [resolu][RESOLU]problème de récupération de date
impossible d'ajouter des composants OCX sur VB6 [Résolu][PHP] Erreur lors d'un test d'un cookie inexistant [Résolu]
problémes de rep parent (ASP) - (résolu)[résolu] Rendre un textarea pas éditable
Plus de sujets relatifs à : [Résolu] wxWidgets clignottement au resize


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR