在tkinter界面中如何销毁已经创建的Radiobutton按钮并实时重新生成其它不同选项的按钮
时间: 2023-05-30 11:06:02 浏览: 181
要销毁已经创建的Radiobutton按钮,可以使用button.destroy()方法。要重新生成其他不同选项的按钮,可以先清空原来的按钮,再使用新的选项生成新的Radiobutton按钮。以下是一个示例代码:
```
import tkinter as tk
class App:
def __init__(self, root):
self.root = root
self.create_widgets()
def create_widgets(self):
self.var = tk.StringVar()
self.option_list = ["Option 1", "Option 2", "Option 3"]
self.radio_buttons = []
for option in self.option_list:
button = tk.Radiobutton(self.root, text=option, variable=self.var, value=option)
button.pack()
self.radio_buttons.append(button)
self.update_button = tk.Button(self.root, text="Update options", command=self.update_options)
self.update_button.pack()
def update_options(self):
# Destroy existing buttons
for button in self.radio_buttons:
button.destroy()
# Create new buttons with updated options
self.option_list = ["Option 4", "Option 5", "Option 6"]
self.radio_buttons = []
for option in self.option_list:
button = tk.Radiobutton(self.root, text=option, variable=self.var, value=option)
button.pack()
self.radio_buttons.append(button)
root = tk.Tk()
app = App(root)
root.mainloop()
```
在这个示例代码中,初始化时会生成三个Radiobutton按钮,并将其保存在self.radio_buttons列表中。当点击“Update options”按钮时,会销毁原来的按钮,并根据新的选项生成新的Radiobutton按钮。新的按钮也会保存在self.radio_buttons列表中,以便后续操作。
阅读全文