Traceback (most recent call last): File "D:\qwe\lib\tkinter\__init__.py", line 1921, in __call__ return self.func(*args) File "C:\Users\H\PycharmProjects\pythonProject1\main.py", line 49, in open_order_module order_module_gui = OrderModuleGUI(self.container) File "C:\Users\H\PycharmProjects\pythonProject1\main.py", line 6, in __init__ master.title("订单模块") AttributeError: 'Frame' object has no attribute 'title'
时间: 2023-07-05 20:34:17 浏览: 213
Mac下anaconda中Spyder打开报错Traceback(most recent call last)…问题
5星 · 资源好评率100%
这个错误提示是因为您在一个 `Frame` 对象上调用了 `title` 方法,而 `Frame` 没有 `title` 属性。我猜测您在创建 `OrderModuleGUI` 对象时,将 `master` 参数传成了 `Frame` 对象。
您需要将 `master` 参数传成 `Tk` 对象,这样才能调用 `title` 方法来设置窗口的标题。具体来说,您可以在主程序中创建一个 `Tk` 对象,然后将它作为参数传递给 `OrderModuleGUI` 对象,示例代码如下:
```python
import tkinter as tk
class OrderModuleGUI:
def __init__(self, master):
self.master = master
self.master.title("订单模块")
# 其他初始化代码
# 主程序
root = tk.Tk()
root.title("主窗口")
container = tk.Frame(root)
order_module_gui = OrderModuleGUI(container)
container.pack()
root.mainloop()
```
在这个例子中,我们首先创建了一个 `Tk` 对象 `root`,然后将它作为参数传递给 `OrderModuleGUI` 对象。在 `OrderModuleGUI` 的构造函数中,我们将 `master` 参数赋值给 `self.master`,并调用 `self.master.title` 方法来设置窗口的标题。最后在主程序中调用 `root.mainloop` 方法来运行主程序。
阅读全文