Python Tkinter通过选中复选按钮来运行多个功能

Python Tkinter通过选中复选按钮来运行多个功能,python,tkinter,tkinter.checkbutton,Python,Tkinter,Tkinter.checkbutton,我正在构建一个脚本来制作一个GUI窗口,其中展示了我以前所做的一些功能 我想勾选我想要运行函数的按钮。 到目前为止,我可以通过选中复选框来运行函数。但只有一个 button1 = ttk.Checkbutton(window, command = function1 ) 但我有几个检查按钮,在最后的“运行”按钮运行上面检查的所有功能 button1 = ttk.Checkbutton(window, ) button2 = ttk.Checkbutton(window,

我正在构建一个脚本来制作一个GUI窗口,其中展示了我以前所做的一些功能

我想勾选我想要运行函数的按钮。 到目前为止,我可以通过选中复选框来运行函数。但只有一个

button1 = ttk.Checkbutton(window,
    command = function1
    )
但我有几个检查按钮,在最后的“运行”按钮运行上面检查的所有功能

button1 = ttk.Checkbutton(window,
    )
button2 = ttk.Checkbutton(window,
    )
button3 = ttk.Checkbutton(window,
    )

run_button = ttk.Button(window,
    text = 'run',
    command = proper command to run the functions ticked above
    )
有什么办法使之成为可能吗

  • 另外,我想在点击run按钮后关闭GUI窗口,但还找不到解决方案

提前谢谢

请检查执行硬编码的加法、减法、乘法和删除功能的代码段

  • 勾选复选框时,将触发相应的功能
  • 单击“运行”按钮时,将触发所有功能
  • 单击运行按钮后,将打印输出,同时关闭tkinter窗口
  • 编辑: 根据注释,现在只有当您按下运行按钮时,所有函数才会运行

    Label(master, text="Operations:").grid(row=0, sticky=W)
    var1 = IntVar()
    Checkbutton(master, text="Add", variable=var1).grid(row=1, sticky=W)
    var2 = IntVar()
    Checkbutton(master, text="Subtract", variable=var2).grid(row=2, sticky=W)
    var3 = IntVar()
    Checkbutton(master, text="Multiply", variable=var3).grid(row=3, sticky=W)
    var4 = IntVar()
    Checkbutton(master, text="Divide", variable=var4).grid(row=4, sticky=W)
    Button(master, text='Run', command=run_all).grid(row=5, sticky=W, pady=4)
    mainloop()
    

    选中复选框时,将运行这些命令。你想在单击“运行”按钮时再次运行函数吗?@BryanOakley不,我只想在按下“运行”按钮后运行函数,但我不想在单击按钮后立即运行代码。只有在我按下跑步按钮之后
    Label(master, text="Operations:").grid(row=0, sticky=W)
    var1 = IntVar()
    Checkbutton(master, text="Add", variable=var1).grid(row=1, sticky=W)
    var2 = IntVar()
    Checkbutton(master, text="Subtract", variable=var2).grid(row=2, sticky=W)
    var3 = IntVar()
    Checkbutton(master, text="Multiply", variable=var3).grid(row=3, sticky=W)
    var4 = IntVar()
    Checkbutton(master, text="Divide", variable=var4).grid(row=4, sticky=W)
    Button(master, text='Run', command=run_all).grid(row=5, sticky=W, pady=4)
    mainloop()