问题很简单,如何使用 PyGTK 隐藏活动窗口上的光标???
这是我为学习这一点而制作的一个基本应用程序......
#!/usr/bin/env python
import gtk
class app:
def __init__(self):
window = gtk.Window(gtk.WINDOW_TOPLEVEL)
window.set_title("TestApp")
window.set_default_size(400,200)
pixmap = gtk.gdk.Pixmap(None, 1, 1, 1)
color = gtk.gdk.Color()
cursor = gtk.gdk.Cursor(pixmap, pixmap, color, color, 0, 0)
window.set_cursor(cursor)
window.connect("destroy", gtk.main_quit)
window.show_all()
app()
gtk.main()
显然,它只是一个窗口,但是当我尝试运行它时。我收到这个错误。
AttributeError:“gtk.Window”对象没有属性“set_cursor”
看到该错误后,我意识到 gt.Window 将无法做到这一点,但 gtk.gdk.Window 可以。但是,我如何转换这个基本窗口以隐藏光标。
如中所述PyGTK 常见问题解答,您应该将光标设置在realize信号。如果你不等待realize信号,the gtk.gdk.window尚未创建,因此您无法更改光标。
所以,你可以这样做:
#!/usr/bin/env python
import gtk
class app:
def __init__(self):
window = gtk.Window(gtk.WINDOW_TOPLEVEL)
window.set_title("TestApp")
window.set_default_size(400,200)
window.connect("realize", self.realize_cb)
window.connect("destroy", gtk.main_quit)
window.show_all()
def realize_cb(self, widget):
pixmap = gtk.gdk.Pixmap(None, 1, 1, 1)
color = gtk.gdk.Color()
cursor = gtk.gdk.Cursor(pixmap, pixmap, color, color, 0, 0)
widget.window.set_cursor(cursor)
app()
gtk.main()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)