No funciona, el callback al pulsar el botón izquierdo solo devuelve un solo
parámetro que es el propio icono.
Según la documentación los eventos del StatusIcon son activate (botón
izquierdo), popup-menu (botón derecho) y size-change pero no es necesario, y
ninguno devuelve el objeto event.
Pongo un ejemplo del código:
class StatusIcon:
def __init__(self):
self.statusicon = gtk.StatusIcon()
self.statusicon.set_from_stock(gtk.STOCK_HOME)
self.statusicon.connect("popup-menu", self.right_click_event)
self.statusicon.connect('activate', self.left_click_event)
def left_click_event(self, icon):
print 'Botón izquierdo'
def right_click_event(self, icon, button, time):
print 'Botón derecho'
# Código del menú aquí
s = StatusIcon()
gtk.main()
________________________________
De: Carlos Zuniga <[email protected]>
Para: La lista de python en castellano <[email protected]>
Enviado: domingo 4 de septiembre de 2011 2:28
Asunto: Re: [Python-es] Icono en bandeja del sistema y ratón del Mac
2011/9/3 alfonso saavedra <[email protected]>:
> Estoy usando Gtk y Python 2. Perdón por no ponerlo
En el objeto evento en el callback hay una propiedad state que
devuelve una mascara de las teclas modificadoras presionadas:
def on_click(widget, event):
if event.state & gtk.gdk.CONTROL_MASK:
print "Click con Control"
Aquí hay una lista de las teclas:
http://www.pygtk.org/pygtk2tutorial/sec-EventHandling.html
Saludos
--
Linux Registered User # 386081
A menudo unas pocas horas de "Prueba y error" podrán ahorrarte minutos
de leer manuales.
_______________________________________________
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/_______________________________________________
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/