遇到一个问题,试图将我在初级绘画程序中创建的框架对象网格化。
获取错误的实例化代码在这里:
public static final String s="123";
我收到的错误与from tkinter import *
from Menu import Menu
class Application(Frame):
def __init__(self, master=None):
Frame.__init__(self,master)
self.grid()
self.createWidgets()
def createWidgets(self):
#Imports each of the frames from the collection from the various widgets
menu=Menu()
menu.grid(row=0,column=0,columnspan=2)
app=Application()
app.master.title=('Sample Application')
app.mainloop()
操作有关,并且是:
menu=Menu()
TypeError: Menu() missing 1 required positional argument: 'Frame'
对象在这里:
Menu
我的困惑是如何发生位置错误。当我给菜单一个框架(from tkinter import *
import CommandStack
def Menu(Frame):
def __init__(self, master=None):
Frame.__init__(self,master)
self.createWidgets()
def createWidgets(self):
self.new=Button(self,command=CommandStack.new())
self.save=Button(self,command=CommandStack.save())
self.save.grid(row=0,column=1)
self.load=Button(self,command=CommandStack.load())
self.load.grid(row=0,column=2)
)时,我会得到这个错误:
self
我觉得我很想忘记使用框架的关键部分,但我不确定是什么。建议?
答案 0 :(得分:2)
您似乎希望Menu
成为一个类,因此使用__init__
方法将其定义为类。但是你改为将Menu
定义为一个函数,因此你存储在里面的所有函数都被定义为你只在函数中使用的代码。将def Menu
更改为class Menu
,应该没问题。