Bardzo staram się stworzyć okno bez dekoracji i przezroczystego tła za pomocą PyGTK. Chciałbym wtedy narysować zawartość okna z Kairu. Ale nie mogę zmusić go do działania.Jak uzyskać przezroczyste tło w oknie z PyGTK i PyCairo?
Próbowałem wiele różnych sposobów, wszystkie one zawiodły, to jedna z nich
#!/usr/bin/env python
import pygtk
pygtk.require('2.0')
import gtk, sys, cairo
win = None
def expose (widget, event):
cr = widget.window.cairo_create()
#Start drawing
cr.set_operator(cairo.OPERATOR_CLEAR)
cr.set_source_rgba(0.5,1.0,0.0,0.5)
cr.rectangle(0, 0, 0.9, 0.8)
cr.fill()
def main (argc):
global win
win = gtk.Window()
win.set_decorated(False)
win.connect('delete_event', gtk.main_quit)
win.connect('expose-event', expose)
win.set_app_paintable(True)
win.show()
gtk.main()
if __name__ == '__main__':
sys.exit(main(sys.argv))
Więc, co jest najprostszym sposobem, aby to zrobić?
Ten kod wygląda trochę jak mój kod powyżej. Zmieniłem kod zgodnie z kodem C++, ale to też nie działa. – paldepind