import tkinter as tk def disable_button(): button.config(state=tk.DISABLED) root = tk.Tk() button = tk.Button(root, text="Click me!", command=disable_button) button.pack() root.mainloop()bad state "1860771373120c": must be active, disabled, or normal
时间: 2023-06-15 09:07:13 浏览: 105
这个错误通常是由于使用了不支持的状态值导致的。在你的代码中,`state`参数应该被设置为`"active"`、`"disabled"`或`"normal"`中的一个。
修改代码中的`disable_button`函数,将`state`参数设置为`"disabled"`即可:
```
def disable_button():
button.config(state="disabled")
```
这将禁用按钮,并将其状态设置为`"disabled"`。运行代码时,点击按钮将禁用按钮,以便无法再次点击它。
相关问题
import tkinter as tk def disable_button(): button.config(state=tk.DISABLED) root = tk.Tk() button = tk.Button(root, text="Click me!", command=disable_button) button.pack() root.mainloop()
这段代码展示了如何使用 tkinter 模块创建一个窗口,包含一个按钮,当按钮被点击时会禁用它。代码分为两部分:
第一部分是定义了一个 disable_button 函数,当这个函数被调用时,会将按钮的状态设置为 DISABLED,从而禁用按钮。
第二部分是创建了一个 tkinter 窗口,并在窗口中创建了一个按钮。按钮的文本为 "Click me!",并且当按钮被点击时会调用 disable_button 函数。
最后,程序进入主循环,等待用户的交互事件。
tk的button置灰及10s后还原
在Tkinter中,可以通过设置Button的`state`属性将按钮置灰或还原。以下是一个示例,演示如何通过Tkinter将一个Button置灰或还原,并在10秒后还原按钮。
```python
import tkinter as tk
def disable_button():
button.config(state=tk.DISABLED) # 将按钮置灰
def enable_button():
button.config(state=tk.NORMAL) # 还原按钮
root = tk.Tk()
button = tk.Button(root, text="点击我", command=disable_button)
button.pack()
root.after(10000, enable_button) # 10秒后还原按钮
root.mainloop()
```
在上面的代码中,`tk.DISABLED`表示将按钮置灰,`tk.NORMAL`表示还原按钮。在`disable_button`函数中,将按钮的`state`属性设置为`tk.DISABLED`,就可以将按钮置灰。在`enable_button`函数中,将按钮的`state`属性设置为`tk.NORMAL`,就可以还原按钮。`root.after(10000, enable_button)`表示10秒后执行`enable_button`函数,即还原按钮。
需要注意的是,按钮置灰后,不能被点击。而还原按钮后,可以被点击。
阅读全文