Python 如何将链接正确连接到按钮?

Python 如何将链接正确连接到按钮?,python,tkinter,Python,Tkinter,我正在尝试将链接附加到一个按钮,该按钮将在单击时打开 from Tkinter import * import webbrowser class Window(Frame): def __init__(self, master=None): Frame.__init__(self, master) self.master = master self.init_window() def ini

我正在尝试将链接附加到一个按钮,该按钮将在单击时打开

from Tkinter import *
import webbrowser

class Window(Frame):


    def __init__(self, master=None):
        Frame.__init__(self, master)                 
        self.master = master
        self.init_window()

    def init_window(self):  

        self.master.title("Anonymous Button Box")    

        self.pack(fill=BOTH, expand=1)  

        _Button = Button(self, text="Don't Click", command=webbrowser.open("http://example.com", new=2, autoraise="True"))  

        _Click = Button(self, text="Click") 

        _Click.place(x=80, y=0)  

        _Button.place(x=0, y=0)  



root = Tk()

root.geometry("300x300")        

app = Window(root)
root.mainloop()  
当我运行这个程序时,它会在框本身弹出之前自动打开链接。我将如何编写它,使链接仅在按下按钮时运行?
我是否会创建另一个函数来打开链接,然后在按下按钮时命令它使用该函数?

我将按钮命令包装在lambda函数中。所以我的按钮看起来像这样:

`_Button = Button(self, text="Don't Click", command=lambda: webbrowser.open("http://example.com", new=2, autoraise="True"))`

根据经验,按钮命令应该调用不接受任何参数的函数。通过这样做,编写命令、创建按钮和调试程序变得更加容易

因此,在本例中,我将创建一个名为open\u browser或on\u dont\u click\u button之类的函数:

def open_browser(self):
    webbrowser.open("http://example.com", new=2, autoraise="True")
然后,按钮变得更容易实现:

_Button = Button(..., command=open_browser, ...)  

编写一个函数,在浏览器中打开链接,我们称之为open\u link。将代码更改为以下命令=self.open\u link。