我正在使用tkinker创建一个小菜单,但每次运行它时,应用程序就像chrome
一样运行这是我的代码:
from tkinter import *
from tkinter import messagebox
import os
root = Tk()
root.minsize(width=230, height=230)
root.maxsize(width=230, height=230)
root.configure(background='blue')
menubar = Menu(root)
root.title("alex")
filemenu = Menu(menubar, tearoff=0)
filemenu.add_command(label="Exit", command=exit)
menubar.add_cascade(label="File", menu=filemenu)
editmenu = Menu(menubar, tearoff=0)
b1 = Button(root, text = "chrome", command=os.startfile('c:\Program Files (x86)\Google\Chrome\Application\chrome.exe'))
b1.place(x=30,y=30)
b2 = Button(root, text = "exit", command=exit)
b2.place(x=200,y=200)
root.config(menu=menubar)
root.mainloop()
答案 0 :(得分:3)
以您拥有的格式创建按钮时,tkinter将执行您传递的命令。一个简单的解决方法是创建一个lambda函数,在按下按钮时将调用该函数。
请参阅下面的b1
按钮定义:
b1 = Button(root, text="chrome", command=lambda:
os.startfile(r'c:\Program Files (x86)\Google\Chrome\Application\chrome.exe'))
另请注意,调用exit
并不是退出应用程序最干净的方法。我推荐以下内容:
b2 = Button(root, text="exit", command=lambda: root.destroy)