pyGObject 透明光标
我想知道怎么用Python的GTK3和pyGObject来实现一个透明的光标。我在网上找了很多资料,但就是找不到相关的信息。我看到很多例子是用pixmap的,但我觉得pyGObject里没有pixmap这个东西。我也找不到任何文档说明用什么来替代pixmap。求助,我现在卡住了。
谢谢,
Sam
2 个回答
3
这段代码会让光标变得不可见,而不是透明的。
不过我希望你能对它进行修改,做到这一点:
from gi.repository import Gtk, Gdk
import cairo
s = cairo.ImageSurface(cairo.FORMAT_A1, 1, 1)
cursor_pixbuf = Gdk.pixbuf_get_from_surface(s, 0, 0, 1, 1)
cursor = Gdk.Cursor.new_from_pixbuf(Gdk.Display.get_default(), \
cursor_pixbuf, 0, 0)
win = Gtk.Window(title="Hello World")
win.show_all()
win.get_window().set_cursor(cursor)
Gtk.main()
3
这是获取透明光标的最简单方法:
from gi.repository import Gtk, Gdk
win = Gtk.Window(title="Hello World")
win.show_all()
cursor = Gdk.Cursor.new(Gdk.CursorType.BLANK_CURSOR)
win.get_window().set_cursor(cursor)
Gtk.main()