我正在尝试为已经起作用的python模块制作一个GUI作为项目。我是Tkinter的新手,所以我在这里使用https://stackoverflow.com/a/7557028/10315872的布莱恩·奥克利(Bryan Oakley)的答案作为我的工作的参考,并在各处进行了一些小改动。此处的GUI python文件应该从用户那里获取数据,并使用其他python模块PdbHandler和CrdHandler生成必须使用Tkinter显示的数据文件。下面的附件是项目的当前进度,显示了错误属性错误'Master'对象没有属性'_loadtk'。
=INDEX(<get the value from in this table where...>, MATCH(<this value appears in...>, <this list of row headers and...>,0), MATCH(<this value appears in...>, <this list of column headers>, 0))
我尝试使用root = tk.Tk()并将根传递给master,这是此查询Python Tkinter error object has no attribute中的类似问题。但这显示了另一个错误。
File "C:\Users\Dark12Arrow\AppData\Local\Programs\Python\Python37-32\lib\tkinter\__init__.py", line 2022, in __init__
self._loadtk()
AttributeError: 'master' object has no attribute '_loadtk'
由于代码仍然不完整,所以第二页只是空白页:
File "C:\Users\Dark12Arrow\AppData\Local\Programs\Python\Python37-32\lib\tkinter\__init__.py", line 2020, in __init__
self.tk = _tkinter.create(screenName, baseName, className, interactive,
wantobjects, useTk, sync, use)
TypeError: create() argument 1 must be str or None, not Tk
答案 0 :(得分:0)
第8行不应该是:
super().__init__(*args, **kwargs)
答案 1 :(得分:0)
问题出在以下三行:
class master(tk.Frame):
def __init__(self, *args, **kwargs):
tk.Tk.__init__(self, *args, **kwargs)
您从tk.Frame
继承,但是随后尝试调用__init__
的{{1}}方法上面代码段的第一行和第三行需要在类上达成共识。