我可以从一个按钮打开一个框架。我可以关闭框架并从同一个按钮重新打开它,但每次按下按钮都会抛出错误。
我的代码中出现错误的原因是root.Show()
,它给了我一个AttributeError Show
错误
我的问题是,虽然它工作得很漂亮,但是它会对我的应用程序产生严重问题吗?
编辑:这是我的python文件中的代码
from Tkinter import *
root = Tk()
root.title("Help")
scrollbar = Scrollbar(root)
scrollbar.pack(side=RIGHT, fill=Y)
help_message = 'This is the help menu. Please scroll through the menu to find the answer to your question'
txt = Text(root, wrap=WORD) # wrap=CHAR, wrap=NONE
txt.pack(expand=1, fill=BOTH)
txt.insert(END, help_message)
txt.config(yscrollcommand=scrollbar.set, state=DISABLED)
scrollbar.config(command=txt.yview)
root.Show()
从该程序的最后一行获取错误。这是命令提示符中的错误:
答案 0 :(得分:1)
你可能只想使用root.mainloop()
,因为我没有看到方法Show或show(Python区分大小写,方法/函数通常是lower_case_with_underscores)。
mainloop
函数基本上等待程序结束,但如果你有像按钮这样的东西,你可以让Tkinter调用某个函数来响应(事件驱动)。
答案 1 :(得分:0)
我删除了root.Show()
,添加了一个必须单击的按钮才能让窗口保持隐藏但正在运行。然后我在主文件HelpBox.root.deiconify()
中添加了弹出的屏幕。如果用户单击“X”按钮,则在重新启动应用程序之前无法重新打开帮助菜单。
感谢大家的帮助和想法