我在Windows上创建了一个PyGTK LinkButton。它包含我想在用户浏览器中打开的URI。
gtk.LinkButton("http://www.mysite.com")
文档here表明我需要为gtk.link_button_set_uri_hook
提供一个钩子函数。 PyGTK内置了一个可以跨平台使用的功能,还是需要编写自己的Windows特定功能?
答案 0 :(得分:1)
你有什么尝试?您不必提供URI挂钩。只需提供URI,LinkButton
将负责其余的工作。最小的例子:
from gi.repository import Gtk
w = Gtk.Window()
w.connect("destroy", Gtk.main_quit)
w.add(Gtk.LinkButton("http://google.com", "test"))
w.show_all()
Gtk.main()
这将创建一个带有单个按钮的窗口,单击此按钮可在系统默认Web浏览器中打开Google
如果由于任何原因这不起作用,您可以查看Python标准库中的 webbrowser
模块,该模块提供跨平台支持(我不知道是否这个模块在内部使用gtk,在这种情况下,它只会没有区别。)
答案 1 :(得分:0)
一种适用于Windows和Linux的方法:
def _open_link(func, data=None):
desktop.open(data)
gtk.link_button_set_uri_hook(_open_link)