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

GTK+ avec Python Discussion :

recuperer une sous liste dans un combobox


Sujet :

GTK+ avec Python

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 5
    Par défaut recuperer une sous liste dans un combobox
    bonjour les enfants,
    j ai une petite interrogation qui commence a m'ennerver.

    il s agit de pygtk, j ai un combobox dont le modele est un treestore ,cela permet de selectionner dans un menu un produit , ce produit etant classé dans un des 4 sous groupes dispo( pression bouteille autre, autr )
    mais impossible d avoir le produit selectionne .. je n arrive a lire que le sous groupe du produit.

    c est a dire que je voudrai par exemple recupere "ligne 2 de bouteille " et pas bouteille qd je selectionne ligne 2 de bouteille

    vous avez des idées?

    voila le 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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    #!/usr/bin/env python
     
    import pygtk
    pygtk.require('2.0')
    import gtk,os
     
    class ExempleComboBoxColonnes:
        def __init__(self):
            fenetre = gtk.Window()
            fenetre.connect('destroy', lambda w: gtk.main_quit())
            boitderoul = gtk.ComboBox()
            #liststore = gtk.ListStore(gtk.ListStore)
    	self.treestore = gtk.TreeStore(str)
    	list2 = gtk.ListStore(str)
    	list2.append("r")
    	for type in ["pression","bouteille","autre boissons","PWeT"]:
    		m_iter = self.treestore.append(None, [' %s' % type])
    		for fille in range(3):
    			self.treestore.append(m_iter, ['ligne  %i de %s'% (fille, type)])
     
     
     
     
     
            case = gtk.CellRendererText()
            boitderoul.pack_start(case)
            boitderoul.add_attribute(case, 'text', 0)
            fenetre.add(boitderoul)
            #boitderoul.set_wrap_width(5)
            for n in range(50):
                list2.append(['Item %d'%n])
            boitderoul.set_model(self.treestore)
            boitderoul.connect('changed', self.fct_rappel_change)
            boitderoul.set_active(0)
            fenetre.show_all()
            return
     
        def fct_rappel_change(self, boitderoul):
            modele = boitderoul.get_model()
    	print modele
    	print type(modele)
            index = boitderoul.get_active()
            if index > -1:
     
    	    print modele[index],len(modele[index])
    	    print modele[index][0], 'choisi'
     
            return
     
    def main():
        gtk.main()
        return
     
    if __name__ == "__main__":
     
        ecc = ExempleComboBoxColonnes()
        main()
    merci

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 5
    Par défaut
    up svp.. je me doute que c est tout bete comme demande mais je suis paumé

    merci

  3. #3
    Rédacteur

    Avatar de gege2061
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2004
    Messages
    5 840
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2004
    Messages : 5 840
    Par défaut
    Bonjour,

    Juste un petit problème avec la fonction de récupération de l'élément sélectionné :
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    #!/usr/bin/env python
     
    import pygtk
    pygtk.require ('2.0')
    import gtk, os
     
    class ExempleComboBoxColonnes:
      def __init__ (self):
        window = gtk.Window ()
        window.connect ('destroy', lambda w: gtk.main_quit())
     
        combo = gtk.ComboBox ()
        cell = gtk.CellRendererText ()
        combo.pack_start (cell)
        combo.add_attribute (cell, 'text', 0)
        combo.connect ('changed', self.change)
        window.add (combo)
     
        treeStore = gtk.TreeStore (str)
        for type in ["pression", "bouteille", "autre boissons", "PWeT"]:
          iter = treeStore.append (None, [' %s' % type])
          for num in range (3):
            treeStore.append (iter, ['ligne  %i de %s'% (num, type)])
        combo.set_model (treeStore)
     
        combo.set_active (0)
        window.show_all ()
        return
     
      def change (self, combo):
        model = combo.get_model ()
        iter = combo.get_active_iter ()
        print model.get_value (iter, 0)
        return
     
    if __name__ == "__main__":
        ExempleComboBoxColonnes ()
        gtk.main ()
    Et avec un code propre, c'est plus simple pour ceux qui ne connaissent pas python

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 5
    Par défaut
    merci beaucoup beaucoup beaucoup

    baka

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

Discussions similaires

  1. [Débutant] Envoyer ligne(valeur) liste a une autre liste dans un combobox
    Par hamd6 dans le forum Développement Sharepoint
    Réponses: 5
    Dernier message: 17/05/2013, 10h34
  2. Réponses: 0
    Dernier message: 28/11/2010, 23h43
  3. [XL-2003] Gestion d'une liste dans un combobox
    Par steps5ive dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/06/2010, 21h58
  4. Réponses: 2
    Dernier message: 16/11/2007, 11h44
  5. Rechercher une sous chaine dans une chaine
    Par Oluha dans le forum ASP
    Réponses: 4
    Dernier message: 03/02/2005, 14h39

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