上面代码报错__init__() got an unexpected keyword argument 'width'
时间: 2023-10-05 19:08:46 浏览: 113
这个错误通常是因为你在实例化一个类时,传递了一个该类不支持的参数。可能原因是你传递了一个名为"width"的参数,但是该类的构造函数没有定义该参数。你可以检查一下你调用类时传递的参数是否正确,或者检查一下类的定义,看一下构造函数中是否定义了"width"参数。如果没有定义,你可以考虑删除该参数或者将其改为该类支持的参数。
相关问题
报错__init__() got an unexpected keyword argument 'width'
这个报错通常是因为你在调用一个类的构造函数时,传递了一个该类不支持的参数。可能是你写错了参数名,或者该类并不支持该参数。
举个例子,如果你有一个类叫做`MyModel`,并且它的构造函数只接受`height`和`width`两个参数,那么如果你尝试使用一个名为`width`的参数调用它的构造函数,就会出现这个错误。
如果你能提供更多的上下文或代码片段,我可以更准确地帮助你解决这个问题。
代码报错, __init__() got an unexpected keyword argument 'width'
如果在使用 `SimpleDialog` 的子类时出现了 `__init__() got an unexpected keyword argument 'width'` 的错误,可能是因为 `SimpleDialog` 类并没有提供 `width` 和 `height` 参数。
如果需要设置对话框的大小,可以使用 `dialog_body` 属性来自定义对话框的内容区域。具体来说,可以将一个 `Frame` 对象作为 `dialog_body` 的子组件,并设置该 `Frame` 的大小和布局来实现对话框的自定义大小。
以下是一个示例代码,可以创建一个大小为 300x200 的 `SimpleDialog`:
```python
import tkinter as tk
import tkinter.simpledialog as sd
class MyDialog(sd.SimpleDialog):
def __init__(self, parent):
self.dlg_width, self.dlg_height = 300, 200
body = tk.Frame(self, width=self.dlg_width, height=self.dlg_height)
body.pack_propagate(0)
body.pack()
super().__init__(parent, title="My Dialog", master=parent, dialog_body=body)
root = tk.Tk()
# 创建 SimpleDialog 对象
MyDialog(root)
root.mainloop()
```
以上示例代码中,`MyDialog` 是继承自 `SimpleDialog` 的自定义对话框类,通过创建一个大小为 300x200 的 `Frame` 对象,并将其作为 `dialog_body` 的子组件,来实现对话框的自定义大小。同时,通过 `pack_propagate(0)` 方法来禁止 `Frame` 对象自动调整大小,从而保证对话框的大小不会改变。
阅读全文