Python __init_;()缺少2个必需的位置参数
请帮帮我。在这个创建按钮的简单tkinter程序中,我提供了所有三个参数,但是屏幕上出现了关于位置参数的错误。对不起,我的英语很差。Python __init_;()缺少2个必需的位置参数,python,python-3.x,tkinter,Python,Python 3.x,Tkinter,请帮帮我。在这个创建按钮的简单tkinter程序中,我提供了所有三个参数,但是屏幕上出现了关于位置参数的错误。对不起,我的英语很差。 from tkinter import * class Button: def __init__(self, row, column, frame): self.row = row self.column = column b = Button(frame).grid(row = self.row, column = self.colum
from tkinter import *
class Button:
def __init__(self, row, column, frame):
self.row = row
self.column = column
b = Button(frame).grid(row = self.row, column = self.column)
tk = Tk()
b1 = Button(row = 1, column = 1, frame = tk)
tk.mainloop()
错误是:
重新启动:C:\Users\vnira\Documents\python.projects\Flappy Bird\whiteboard.py回溯(最近一次呼叫最后一次):
文件“C:\Users\vnira\Documents\python.projects\Flappy Bird\whiteboard.py”,第11行,在
b1=按钮(行=1,列=1,帧=tk)
文件“C:\Users\vnira\Documents\python.projects\Flappy Bird\whiteboard.py”,第7行,在init
按钮(框).grid(行=self.row,列=self.column)
TypeError:init()缺少两个必需的位置参数:“column”和“frame”
提前感谢
在按钮
类的初始化
中,您正在尝试使用按钮
类的新实例:
b = Button(frame)
由于按钮。\uuuu init\uuuu
接受3个参数,行、列、帧
脚本失败。如果您确实通过了行
和列
,那么您将遇到递归问题,您将无限地创建按钮
的新实例
编辑:正如评论和其他答案中指出的,tkinter
有自己的按钮
类,您正在覆盖该类,这就是为什么您应该尽量避免这样做
from tkinter import *
而只需在按钮
类中的初始化
中调用按钮
并调用按钮,您正试图处理按钮
类的新实例:
b = Button(frame)
from tkinter import *
class Buttons:
def __init__(self, row, column, frame):
self.row = row
self.column = column
b = Button(frame).grid(row = self.row, column = self.column)
tk = Tk()
b1 = Buttons(row = 1, column = 1, frame = tk)
tk.mainloop()
由于按钮。\uuuu init\uuuu
接受3个参数,行、列、帧
脚本失败。如果您确实通过了行
和列
,那么您将遇到递归问题,您将无限地创建按钮
的新实例
编辑:正如评论和其他答案中指出的,tkinter
有自己的按钮
类,您正在覆盖该类,这就是为什么您应该尽量避免这样做
from tkinter import *
而只需导入tkinter
并调用tkinter.Button
from tkinter import *
class Buttons:
def __init__(self, row, column, frame):
self.row = row
self.column = column
b = Button(frame).grid(row = self.row, column = self.column)
tk = Tk()
b1 = Buttons(row = 1, column = 1, frame = tk)
tk.mainloop()
当tkinter有一个类按钮时,您创建了一个类按钮。使用您自己的变量名可能会有所帮助:)我想它是在尝试递归地生成您创建的Button类的实例,而不是生成tkinter模块中Button类的实例
当tkinter有一个类按钮时,您创建了一个类按钮。使用您自己的变量名可能会有所帮助:)我想它是在尝试递归地生成您创建的Button类的实例,而不是生成tkinter模块中Button类的实例。同样重要的是,通过创建名为Button
的类,他们正在销毁同名的tkinter类。同样重要的是,通过创建名为Button
的类,他们正在销毁同名的tkinter类。