我想在有人使用 PyQt4 单击按钮时打开 URL。我已经使用了一些建议的代码,但它们都不适合我。
btn.clicked.connect(webbrowser.open('http://www.google.com'))
Run Code Online (Sandbox Code Playgroud)
正如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)