我的GtkAboutDialog
将website
属性设置为有效的网址。
单击它时,窗口冻结,然后我收到以下警告:
Could not show link
HEAD request failed: WinHttp error: TIMEOUT
为了澄清一下,在我的计划的其他方面,我明确访问了一个webbrowser.open
的网站,它可以轻松地在浏览器中打开网址。
经过调查,website
功能似乎正在使用gtk.show_uri()
。从Python控制台调用它(如:gtk.show_uri(None, "http://www.google.com", gtk.gdk.CURRENT_TIME)
)。
我通过将uri_hook
重新分配给我的自定义函数来绕过问题。
def uri_hook_func(self, ignore1, url, ignore2):
webbrowser.open(url, new=2)
...
gtk.about_dialog_set_url_hook(self.uri_hook_func, data=None)