【发布时间】:2016-11-02 12:24:36
【问题描述】:
我的构造函数有问题。我收到错误 __init__() missing 1 required positional argument: 'checkbutton'
更新:
这是我的主文件:
from GUI_Rootmodule import GUI_Root
gui_root = GUI_Root()
这是我的根模块文件:
from GUI_Unitmodule import Unit
from tkinter import *
class GUI_Root:
def __init__(self):
print("hoi")
window = Tk()
window.title("Project: Embedded Systems")
rootframe = Frame(window, width=1800, height=750)
rootframe.pack()
Unit(rootframe)
window.mainloop()
这是我的单元模块:
from tkinter import *
class Unit:
def __init__(self, master, checkbutton):
self.frame1 = Frame(master) #Frame voor labels, buttons, entries
self.frame1.pack()
# Checkbutton #
print("test frame")
self.var1 = IntVar()
self.checkbutton = checkbutton(self.frame1, text="Automatisch", variable=self.var1, onvalue= 1, offvalue= 0, pady=20).grid(row=0, column=0, sticky=E)
print("test checkbutton")
# Labels #
self.Extend_Label = Label(self.frame1, text="Uitrol afstand", pady=20).grid(row=2, column=0, sticky=E)
self.Retract_Label = Label(self.frame1, text="Inrol afstand", pady=20).grid(row=3, column=0, sticky=E)
self.Temperture_Label = Label(self.frame1, text="Temperatuur Trigger", pady=20).grid(row=4, column=0, sticky=E)
self.LightIntensity_Label = Label(self.frame1, text="Lichtintensiteit Trigger", pady=20).grid(row=5, column=0, sticky=E)
print("test label")
# Entry #
self.Extend_Entry = Entry(self.frame1).grid(row=2, column=1, sticky=E)
self.Retract_Entry = Entry(self.frame1).grid(row=3, column=1, sticky=E)
self.Temperture_Entry = Entry(self.frame1).grid(row=4, column=1, sticky=E)
self.LightIntensity_Entry = Entry(self.frame1).grid(row=5, column=1, sticky=E)
print("test entry")
# Buttons
self.A = Button(self.frame1, text ="Inrollen", padx=10, pady=20).grid(row=6, column=0)
self.B = Button(self.frame1, text ="Uitrollen", padx=10, pady=20).grid(row=6, column=1)
print("test button")
我尝试在其中运行,但它一直说我缺少我在 init(self, master, checkbutton) 中输入的参数
有人可以解释我在这里缺少什么和/或做错了吗?
更新 2: 没有检查按钮代码,其余的工作并显示一个简单的 GUI。目前还不清楚我到底在哪里错过了 checkbutton 的参数
【问题讨论】:
-
嗯,错误是告诉你你的 Unit 类期待那个参数,但是当你实例化这个类时你实际上并没有提供它(你没有显示)。
-
请先修复您的缩进,然后发布完整的回溯和所有相关代码(编辑您的帖子,不要只是将其添加为 cmets)。
-
这个。我们甚至不知道是哪个实例化导致了问题。
-
我刚刚添加了其余代码
标签: python python-3.x constructor