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 & Toolbar


Sujet :

MFC

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 34
    Par défaut MFC & Toolbar
    Bonjour, je réalise actuellement un projet SDI via les MFC. Dans ma fenetre j'ai rajouter un bouton AutoScroll a ma toolbar. Je souhaite que ce bouton dispose de 2 état (activé désactivé) en remplaçant a chaque fois l'image associer.

    Pour modifier la premier image pas de problème je l'ai fait dans le mainframe comme ceci:

    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
    void CMainFrame::UpdateToolBarBtn(int nIDBtn, int nIDBitmap)
    {
    	TBBUTTON bt = {0};
    	int Index = 0;
     
    	while(m_wndToolBar.GetItemID(Index)!= nIDBtn) 
    		Index++;
     
    	m_wndToolBar.GetToolBarCtrl().GetButton(Index, &bt);
    	bt.iBitmap = m_wndToolBar.GetToolBarCtrl().AddBitmap(1, nIDBitmap);
     
    	bt.fsStyle |= BTNS_BUTTON|TBBS_AUTOSIZE;
    	bt.fsState |= TBSTATE_ENABLED;
     
    	m_wndToolBar.GetToolBarCtrl().DeleteButton(Index);
    	m_wndToolBar.GetToolBarCtrl().InsertButton(Index, &bt);
    }
    désormais je souhaite modifier son état mais je suis dans la vu et je ne sais pas comment accéder a mon main frame pour changer mon image.


    merci d'avance.

  2. #2
    Membre chevronné Avatar de stephdim
    Profil pro
    Inscrit en
    Août 2007
    Messages
    462
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 462
    Par défaut
    salut,

    deux solutions:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    CMainFrame *pMainFrame=STATIC_DOWNCAST(CMainFrame,AfxGetMainWnd());
    --> marche dans tout les cas, SDI , MDI ... et de n'importe où (document,vue ...)

    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    CMainFrame *pMainFrame=STATIC_DOWNCAST(CMainFrame,GetParentFrame());
    --> marche uniquement pour SDI et depuis la vue

    @+

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 34
    Par défaut
    j'ai trouver une autre technique mais merci quand même

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [C++ - MFC] : ScrollBar - ToolBar - TreeCtrl
    Par angusyoung34 dans le forum C++
    Réponses: 0
    Dernier message: 16/04/2008, 15h49
  2. Réponses: 5
    Dernier message: 13/06/2005, 18h01
  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