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

wxPython Discussion :

[toolbar qui change en fonction d'un choix]


Sujet :

wxPython

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    133
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 133
    Points : 93
    Points
    93
    Par défaut [toolbar qui change en fonction d'un choix]
    Bonsoir,

    je me trouve devant un problème que j'ai rencontré plusieurs fois mais auquel je n'ai jamais trouvé la solution. Ainsi j'ai besoin d'un petit éclaircissement !

    voilà, j'ai mon interface graphique, avec un menu et une toolbar.
    Dans cette toolbar, si je clique sur l'icone "fonction 2", je voudrai que la barre d'outils change. Je n'arrive pas à trouver le processus ! Est-ce une initialisation ? un changement de classe ? Je ne sais point !

    Merci de votre aide

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 053
    Points : 1 384
    Points
    1 384
    Par défaut
    moins précis c'est possible ? ^^

    non sérieusement , faut nous en dire plus ....

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    133
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 133
    Points : 93
    Points
    93
    Par défaut
    Oui moins précis c'est possible ! J'aurai très bien pu te dire : J'ai une toolbar, comment celle ci peut changer en appuyant sur un bouton ?? ^^

    Non, une toolbar, normale, a des icones. Si dans ces icones, il y en a un qui s'appelle "changement toolbar". Comment, en cliquant sur celui ci, la toolbar complète change ( les icones y compris.. )

    Prends un exemple. Imagines un logiciel "multi-editeur". Par défault, quand tu ouvres le logiciels, tu tombes sur une toolbar de traitement de texte ( aligment, police, caractères spéciaux etc... ). Ensuite sur cette même toolbar, il y a un icone "tableur". Quand tu appuis sur cet icone, la barre d'outils change, passant de celle pour le traitement de texte à celle du tableur.

    Merci Josmiley !

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 328
    Points : 240
    Points
    240
    Par défaut
    Salut,

    Juste une idée :

    Tu pourrais mettre toutes tes toolBar dans un Gridsizer et tu ne fais apparaître que celle dont tu as besoin.

    Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    def OnChoixToolBar1(self, event):
       self.toolBar1.Show(True)
       self.toolBar2.Show(False)
       self.toolBar3.Show(False)
       self.gridsizer.Layout(True)
    Bon je viens de taper ce bout de code vite fait alors ne le prends pas tel quel. Mais je mets ma main à couper que cela fonctionne. Et c'est sûrement la solution la plus simple...

    A +

  5. #5
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 053
    Points : 1 384
    Points
    1 384
    Par défaut
    je suppose que la barre n'apparait pas par magie, tu as sûrement fait une routine qui la construie et qui l'affiche, et cette routine devrait normalement prendre en argument la liste des icones et boutons à traiter ... il suffit alors de passer les nouveaux arguments pour afficher la nouvelle barre.

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    133
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 133
    Points : 93
    Points
    93
    Par défaut
    Voici mon bout de code :

    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
    19
    20
    21
    22
    23
    24
    25
    26
    def barreoutilsH(self):
            tb = wx.ToolBar(self.panel1, style =wx.TB_HORIZONTAL | wx.NO_BORDER | wx.TB_FLAT)
            sizer = wx.BoxSizer(wx.VERTICAL)
            sizer.Add(tb, 0, wx.EXPAND)
            self.panel1.SetSizer(sizer)
     
            self.CreateStatusBar()
     
            img_new = wx.Image("media/new.png", wx.BITMAP_TYPE_PNG).ConvertToBitmap()
            img_open = wx.Image("media/open.png", wx.BITMAP_TYPE_PNG).ConvertToBitmap()
            img_save = wx.Image("media/save.png", wx.BITMAP_TYPE_PNG).ConvertToBitmap()
            img_close = wx.Image("media/close.png", wx.BITMAP_TYPE_PNG).ConvertToBitmap()
     
     
            tb.SetToolBitmapSize((24,24))
     
            tb.AddSimpleTool(100, img_new, "Nouveau", "Nouveau fichier sur la page")
            tb.AddSimpleTool(101, img_open, "Ouvrir", "Ouvrir fichier sur la page")
            tb.AddSimpleTool(102, img_save, "Enregistrer", "Enregistrer fichier sur la page")
            tb.AddSimpleTool(103, img_close, "Femer", "Fermer fichier sur la page")
     
            tb.AddSeparator()
     
            tb.AddSimpleTool(104, img_close, "Femer", "Fermer fichier sur la page")
     
            tb.Realize()
    et je l'appelle depuis la classe principale :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    # Appel de la toolbar
    self.barreoutilsH()
    Est-ce que je devrais plutôt créer une classe Toolbar1 ?? et une autre pour Toolbar2 ?

    Merci !!

  7. #7
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 053
    Points : 1 384
    Points
    1 384
    Par défaut
    je dirai plutot une class Toolbar(attributs), et 2 instances, toolbar1 et toolbar2 avec les attributs qui vont bien à chacune.

Discussions similaires

  1. Fond de page qui change en fonction du mois
    Par chris22 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 01/09/2011, 09h45
  2. Contenu d'un div qui change en fonction du choix
    Par theophile76 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 17/01/2011, 17h40
  3. Réponses: 2
    Dernier message: 24/09/2009, 17h48
  4. Réponses: 3
    Dernier message: 04/03/2008, 13h39
  5. Toolbar qui change les actions des clics
    Par TheDrev dans le forum Windows
    Réponses: 2
    Dernier message: 23/10/2007, 11h02

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