我已经开发了用于图像分析的脚本,并希望将其与GUI打包在一起。我决定使用tkinter。我创建了一个类,当我尝试初始化时,它缺少我编写的菜单。我对为什么我的脚本不起作用感到有些困惑,我对tkinter以及类都是陌生的,这增加了混乱:)关于我的脚本不起作用的任何帮助将不胜感激,谢谢! >
import tkinter as tk
#from tkinter import filedialog
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("Lifespan Data Analyser")
self.pack(fill=BOTH, expand=1)
menu = Menu(self.master)
self.master.config(menu=menu)
file = Menu(menu)
file.add_command(label='Exit', command = self.frame.quit)
menu.add_cascade(label ='File', menu=file)
browse = Menu(menu)
browse.add_command(label='Browse', command=self.browse_button)
menu.add_cascade(label='Start',menu=browse)
def browse_button(self):
global file_path
# Allow user to select a directory and store it in global var
file_path = filedialog.askdirectory()
file_path=str(file_path)
print(file_path)
root = Tk()
root.geometry("400x300")
app = Window(root)
root.mainloop()
答案 0 :(得分:1)
当我尝试将“退出”项添加到“文件”菜单时,出现错误消息:
AttributeError: 'Window' object has no attribute 'frame'
这很有意义,因为没有属性“ frame”。我认为这可能会更好:
file.add_command(label='Exit', command=self.master.destroy)