首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python & Tkinter -在def中创建菜单

Python & Tkinter -在def中创建菜单
EN

Stack Overflow用户
提问于 2017-05-01 13:44:43
回答 1查看 62关注 0票数 0

我正在尝试在我的一个函数中创建一个名为"Core“的菜单。这个函数在用户成功登录到他们的帐户后被调用,我只想让他们在新窗口创建中使用这些菜单。

我可以成功地将菜单创建到主根目录上,但无法在调用的函数中执行,因为它给了我这个错误:“AttributeError:' function‘object没有属性'tk’”

这是函数本身:( myGUI是主根)

代码语言:javascript
复制
def Core():
myGUI.withdraw()
NewRoot = Toplevel(myGUI,
                   bg="powderblue")
NewRoot.geometry('800x500')
NewRoot.resizable(width=False, height=False)

它在" if“循环中使用,比如用户输入正确的凭据,然后运行上面的函数。

这是放在IF循环中的。

代码语言:javascript
复制
myGUI.after(1000, Core)

问题是:我希望这个菜单显示在名为"Core“的函数中,但正如我在收到此错误之前所说的:"AttributeError:' function‘object没有属性'tk'

代码语言:javascript
复制
# Creating a menu
mainMenu = Menu(Core)
Core.config(menu=mainMenu)
CoreContentMenu = Menu(mainMenu)
mainMenu.add_cascade(label="Support", menu=CoreContentMenu)
CoreContentMenu.add_command=Label("Frequent Asked Questions", command=lambda: GoFrame(FAQ))

我知道错误在这里,因为我调用了这个函数,但是我如何使它工作呢?任何帮助都非常感谢!

代码语言:javascript
复制
mainMenu = Menu(CoreContent)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-01 13:56:53

在这行代码中,您试图使用类作为小部件的父类:

代码语言:javascript
复制
mainMenu = menu(Core)

您需要提供一个有效的小部件,例如NewRoot

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43720135

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档