Bonjour,
Je cherche à désactiver un élément dans une combobox (le griser).
Comment faire ?
Merci d'avance.
Bonjour,
Je cherche à désactiver un élément dans une combobox (le griser).
Comment faire ?
Merci d'avance.
Hey je me pose la même question :p
J'ai grisé le label sans résultat, alors je me suis rabattu sur le 'grisement' de la frame qui englobait tout ce qu'il y avait dans l'onglet en question
Hello, je viens de retrouver ce poste.
En fait, c'est plutôt simple. Il faut créer une ListStore avec les attributs voulu et un booléen pour permettre de griser la ligne ou pas. Il faut ensuite créer la combobox à partir du liststore. Et finalement, un cellrenderer permettra d'associer le booléen du liststore à la propriété 'sensitive'.
Il ne faudra pas oublier de spécifier le booléen lors des ajouts d'une ligne dans la combobox pour activer ou pas la ligne.
Voici un exemple en python (facilement adaptable en C++) :
self.liststore_options = gtk.ListStore(str, bool)
self.combo_options = gtk.ComboBox(self.liststore_options)
cell = gtk.CellRendererText()
self.combo_options.pack_start(cell, True)
self.combo_options.add_attribute(cell, 'text', 0)
self.combo_options.add_attribute(cell, 'sensitive', 1)
#pour ajouter
self.liststore_options.append(["bla bla", False])
Partager