[Python-es] FW: como puedo hacer un gtk.eventbox invisible dentro de una ventana transparente?
xiao xiong mao panda rojo
ailurus.fulgens en hotmail.com
Mar Ago 28 00:04:27 CEST 2012
From: ailurus.fulgens en hotmail.com
To: py en ch3m4.org
Subject: RE: [Python-es] como puedo hacer un gtk.eventbox invisible dentro de una ventana transparente?
Date: Sun, 26 Aug 2012 19:49:13 -0500
no estoy seguro si es así como debo responder a la lista de correo
soy novato XD
muchas gracias. funciona perfectamente
pensé k necesitaría algo como .set_bg(gtk.AlgoDeCanalesAlpha(0.8))
o algo asi
no encuentro buena documentación sobre gtk.
creo k no me caería mal leer algo mas sobre programación dirigida a objetos, o mejor leer código de otros programadores
el código k envié era solo de ejemplo, lo k estoy implementando esta mas ordenado
gracias por el consejo
_______________________________________________
> Date: Mon, 27 Aug 2012 02:18:13 +0200
> From: pych3m4 en gmail.com
> To: python-es en python.org
> Subject: Re: [Python-es] como puedo hacer un gtk.eventbox invisible dentro de una ventana transparente?
>
> El día 26 de agosto de 2012 23:06, xiao xiong mao panda rojo
> <ailurus.fulgens en 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 en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20120827/e4f39c28/attachment.html>
Más información sobre la lista de distribución Python-es