单击按钮时如何使用 PyQt 打开 URL?

Jus*_*ent 4 python pyqt4

我想在有人使用 PyQt4 单击按钮时打开 URL。我已经使用了一些建议的代码,但它们都不适合我。

btn.clicked.connect(webbrowser.open('http://www.google.com'))
Run Code Online (Sandbox Code Playgroud)

Tri*_*ion 6

正如Paul Ronney指出的那样:在代码中,您在解析这行代码时立即调用open对象的方法。webbrowser这不是您想要的,您想稍后在单击按钮时执行它。为此,您需要指定一个方法而不执行它,即没有().

方法途径:

def open_webbrowser():
    webbrowser.open('http://www.google.com')

btn.clicked.connect(open_webbrowser)
Run Code Online (Sandbox Code Playgroud)

或者使用 lambda 表达式:

btn.clicked.connect(lambda: webbrowser.open('http://www.google.com'))
Run Code Online (Sandbox Code Playgroud)