El día 26 de agosto de 2012 23:06, xiao xiong mao panda rojo <ailurus.fulg...@hotmail.com> escribió:
> hice una ventana transparente usando python gtk y cairo > le agregue unos botones pero se ven feos > así que agregue imágenes directamente en lugar de los botones. se ven bien , > incluso las imagenes con canal alpha con las .png y los .gif animados > funcionan y parecen flotar en la ventana > pero las imagenes gtk.image() no tiene eventos "clicked" asi que las puse > dentro de una eventbox gtk.eventbox() > ahora puedo detectar los clicks pero la imagen termina en un rectángulo no > transparente > hay alguna forma de hacer el eventbox transparente? > o pintable? > o agregar eventos del mouse a las imágenes? > alguna idea??? Puedes ocultar los eventboxes, con lo que sólo se dedican a atrapar eventos: e = gtk.EventBox() e.set_visible_window(False) e.add(ima3) Sería mucho mejor si te acostumbras desde el principio a usar programación orientada a objetos para estas cosas: class ImageButton(gtk.EventBox): def __init__(self, image): gtk.EventBox.__init__(self) self.set_visible_window(False) img=gtk.Image() img.set_from_file(image) self.add(img) self.connect("button_press_event",self.clicked) def click(self,widget,event): print("Pulsado:",event.x,event.y) -- Hyperreals *R: http://ch3m4.org/blog Quarks, bits y otras criaturas infinitesimales _______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/