程序源码:
import tkinter as tk
from tkinter.colorchooser import askcolor
def set_colour():
s=askcolor(color="red",title="选择背景色")
root.config(bg=s[1])
class Application(tk.Frame):
def __init__(self,master=None):
super().__init__(master)
self.master=master
self.pack()
self.createwidget()
def createwidget(self):
# 创建主菜单栏
menubar=tk.Menu(root)
# 创建主菜单栏下的菜单项
menu_file = tk.Menu(menubar)
menu_edit = tk.Menu(menubar)
menu_help = tk.Menu(menubar)
# 将菜单项添加入到菜单栏
menubar.add_cascade(label="文件",menu=menu_file)
menubar.add_cascade(label="编辑",menu=menu_edit)
menubar.add_cascade(label="帮助",menu=menu_help)
# 创建菜单项下的子功能
menu_file.add_command(label="新建 (N)",accelerator="Ctrl+N",command=self.func1)
menu_file.add_command(label="打开 (O)",accelerator="Ctrl+O",command=self.func2)
menu_file.add_command(label="保存 (O)",accelerator="Ctrl+S",command=self.func3)
menu_file.add_separator()
menu_file.add_command(label="退出 (Q)",accelerator="Ctrl+Q",command=root.destroy)
# 主菜单栏加载到根窗口
root["menu"]=menubar
def func1(self):
print("新建菜单")
def func2(self):
print("打开菜单")
def func3(self):
print("保存菜单")
if __name__== '__main__':
root = tk.Tk()
root.title("Tkinter 菜单")
root.geometry("800x400+100+100")
btn=tk.Button(root,text="修改背景色",command=set_colour)
btn.pack(pady=10)
app = Application(master=root)
root.mainloop()
运行结果: