web-dev-qa-db-fra.com

Comment changer l'icône du bouton lorsque le bouton est cliqué, python rapidement

J'essaie d'implémenter la fonction de masquage dans mon application. Ce que je veux, c'est avoir cette petite flèche ">" quand se cache et "V" quand est visible. Je sais comment le faire pour qu'il se cache et se montre mais j'ai besoin de cette petite flèche pour changer chaque fois que je clique dessus ....

J'utilise rapidement et python pour créer mon application. J'ai essayé la fonction set_icon_from_stock mais cela renvoie une erreur:

AttributeError: 'ToolButton' object has no attribute 'set_icon_from_stock'

Ci-dessus l'exemple de flèche dont je parle.

Merci

enter image description here

2
Majster-pl

Utilisez simplement un Expander, c'est ce que Update Manager utilise ici aussi. C'est dessiner les flèches et prendre soin de montrer et de cacher ce qu'il y a à l'intérieur.

Screenshot Glade

1
Florian Diesch

http://www.pygtk.org/docs/pygtk/class-gtktoolbutton.html

L'icône d'un gtk.ToolButton est déterminée par les propriétés "icon-widget" et "stock-id". Si "icon-widget" spécifie un gtk.Widget, ce widget est utilisé comme icône. Si "icon-widget" est None, l'icône est déterminée par l'article en stock spécifié par "stock-id". Si "icon-widget" et "stock-id" sont tous les deux None, le bouton n'a pas d'icône.

La méthode set_stock_id () définit la propriété "stock-id" sur la valeur de stock_id. L'élément de stock spécifié par stock_id est utilisé pour déterminer l'icône et l'étiquette si elles ne sont pas remplacées par les propriétés "étiquette" et "icône-widget". Voir le constructeur gtk.ToolButton () pour plus d'informations.

La méthode set_icon_name () définit la propriété "icon-name" sur la valeur de icon_name. Le nom d'icône thématique spécifié par nom_icône est utilisé pour déterminer l'icône du bouton d'outil s'il n'est pas remplacé par les propriétés "label", "stock-id" et "icon-widget". Voir le constructeur gtk.ToolButton () pour plus d'informations.

0
Sergey