IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

[MFC] Rafra�chir/Repaint un toolbar [FAQ]


Sujet :

MFC

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm� Avatar de Mast3rMind
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2006
    Messages
    226
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 226
    Par d�faut [MFC] Rafra�chir/Repaint un toolbar
    Bonjour,

    Je fais des HideButton() et des ShowButton() en MFC sur un toolbar, mais le probl�me c'est qu'apr�s un HideButton(), le toolbar ne se redessine pas. C'est seulement lorsque je d�place ma souris sur le toolbar en question que les boutons sont redessin�s.

    Ma question: quelle fonction appeler pour faire un "update" ou un "refresh" du toolbar?

    Merci !

  2. #2
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    salut,
    essaye de faire RecalcLayout(); dans la frame ou dans la MDIChild suivant ton contexte (SDI ou MDI).

  3. #3
    Membre confirm� Avatar de Mast3rMind
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2006
    Messages
    226
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 226
    Par d�faut
    Merci, j'ai utilis� cette fonction et �a fonctionne bien. Seul probl�me, dans le cas de toolbar flottants, �a ne fonctionne pas, ils ne sont pas mises � jour. Mais d�s que je les "dock" dans le toolbar principal, elles se mettent � jour.

    Quelqu'un a une id�e?

  4. #4
    Membre confirm� Avatar de Mast3rMind
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2006
    Messages
    226
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 226
    Par d�faut
    Si quelqu'un sait quelle fonction appeler pour d�placer une toolbar flottante, ce serait bien appr�ci�!

    Merci!

  5. #5
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    pour le raffraichissement tu peux t'inspirer des techniques utilis�es dans ce post de la faq:
    http://c.developpez.com/faq/vc/?page...rDynamicRedraw
    voir fonction :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    void CToolBarEx::RedrawToolBar(BOOL bRecalcLayout/*=TRUE*/, 
       BOOL bOnlyFrame/*=FALSE*/)
    pour deplacer la barre tu peux utiliser SetWindowPos ou MoveWindow sur la barre d'outils.

  6. #6
    Membre confirm� Avatar de Mast3rMind
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2006
    Messages
    226
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 226
    Par d�faut
    Merci beaucoup farscape! Gr�ce � toi j'ai r�solu mes probl�mes.

    Pour ceux qui auraient le m�me probl�me que moi, voici la solution.

    Probl�me:
    Quand on a un toolbar flottant et qu'on appelle les fonctions pToolBar->HideButton(nIndex,TRUE) ou pToolBar->HideButton(nIndex,FALSE), le toolbar ne se met pas � jour, et on voit toujours les boutons qu'on vient de cacher (par exemple).

    Solution:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    if(pToolBar->IsFloating())
    {
            CRect rect;
    	pToolBar->GetWindowRect(rect);			
     
            pToolBar->SetWindowPos(NULL,0,0,rect.Width(),rect.Height(),
         SWP_NOMOVE|SWP_NOZORDER|SWP_DRAWFRAME|SWP_FRAMECHANGED);
     
    	CPoint newPos(0,0);
    	pToolBar->ClientToScreen(&newPos);
    	CRect rcNew;
     
    	pToolBar->CalcDynamicLayout(rect.Width(),LM_HORZ | LM_COMMIT);
     
    	ParentWindow->FloatControlBar(pToolBar, newPos,
             CBRS_ALIGN_TOP | CBRS_SIZE_DYNAMIC); 
    }

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [MFC] Reaffichage d'un toolbar ferm�
    Par kinhelios dans le forum MFC
    R�ponses: 4
    Dernier message: 14/08/2006, 09h43
  2. R�ponses: 4
    Dernier message: 31/10/2005, 16h32
  3. [MFC] Redimensionnement de ToolBar
    Par windsurfeur44 dans le forum MFC
    R�ponses: 7
    Dernier message: 15/09/2004, 19h43
  4. [MFC]toolbar : modification
    Par Tsunamis dans le forum MFC
    R�ponses: 3
    Dernier message: 09/09/2004, 12h25
  5. [MFC][Toolbar] Aligner les toolbars
    Par 6psyk9 dans le forum MFC
    R�ponses: 3
    Dernier message: 17/05/2004, 21h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo