-
Mise à jour d'un menu
Bonjour,
J'ai créé un gtk.Menu auquel j'ajoute (méthode append) des élements gtk.MenuItem.
J'inclus ensuite ce menu dans un gtk.MenuBar.
Jusque là, tout va bien, mon menu est créé et s'affiche correctement (je l'ai mis dans un gtk.VBox dans une gtk.Window).
Par contre, je voudrais pouvoir ajouter dynamiquement des entrées à mon menu.
C'est à dire que je crée un nouveau gtk.MenuItem et je l'ajoute à mon gtk.Menu (append).
Mais au niveau de l'affichage, quand je vais dans le menu, je ne vois pas apparaître ma nouvelle entrée.
Comment fait-on pour rafraîchir le menu ?
D'avance merci.
-
Salut,
Peux-tu nous montrer un petit exemple simple illustrant ton problème ?
-
-
1 pièce(s) jointe(s)
Code d'exemple
Voici un programme d'exemple (en pièce jointe), je n'avais pas cité mon code initialement car c'était un peu éparpillé dans plusieurs fichiers, et le reste n'avait pas d'intérêt. J'ai réussi à isoler l'essentiel.
Mon menu ne contient initialement que le choix "Add media folder". L'action associée permet de choisir un répertoire et de l'ajouter dans le menu.
La ligne
self.folders_menu.append(folders_menu_folder_item)
est censée ajouter une nouvelle entrée dans le menu (du nom du répertoire sélectionné)
Les deux lignes qui suivent ne servent sans doute à rien, je les ai tentées pour essayer de rafraîchir le menu :
self.folders_menu_item.set_submenu(self.folders_menu)
self.menu.show()
Le menu ne contient toujours que "Add media folder".
-
Ligne 45, remplace :
par :
Code:
folders_menu_folder_item.show()
-
-
Merci ! Ca fonctionne ! :-)