在tkinter中制作一个下拉框,下拉框中的每一个事件都绑定着相应的函数,点击每一个事件都会执行相应的函数的代码,不用循环语句
时间: 2024-02-26 08:56:54 浏览: 93
下拉框的实现
可以使用`command`参数来绑定下拉框中的每一个事件到相应的函数,这样无需使用循环语句。以下是一个示例代码:
```python
import tkinter as tk
from tkinter import ttk
def func1():
print("Event 1")
def func2():
print("Event 2")
def func3():
print("Event 3")
root = tk.Tk()
var = tk.StringVar(value="Select an event")
dropdown = ttk.Combobox(root, textvariable=var, values=["Event 1", "Event 2", "Event 3"])
dropdown.pack()
dropdown["values"] = ["Event 1", "Event 2", "Event 3"]
dropdown.bind("<<ComboboxSelected>>", lambda event: eval(var.get() + "()"))
root.mainloop()
```
在这个示例中,我们定义了三个函数`func1`、`func2`和`func3`,它们分别代表下拉框中的三个事件。然后我们创建了一个下拉框,并将其选项设置为这三个事件。我们使用`bind`方法将下拉框的`<<ComboboxSelected>>`事件绑定到一个lambda函数上,这个lambda函数根据选中的事件名称来执行相应的函数。这个lambda函数中的`eval`函数将字符串形式的函数名转换成实际的函数调用。这样,当用户选择一个事件时,相应的函数就会被调用。
阅读全文