TK点击下拉框就触发有个函数
时间: 2023-10-18 11:21:38 浏览: 36
要在用户选择下拉框选项时触发一个函数,可以使用`tk.StringVar()`类型的变量来存储选项,并使用`trace()`方法监听变量的变化。当用户在下拉框中选择一个选项时,`tk.StringVar()`变量会自动更新,并触发`trace()`函数中定义的回调函数。
以下是一个示例代码,展示如何在用户选择下拉框选项时触发一个函数:
```python
import tkinter as tk
root = tk.Tk()
# 创建一个StringVar变量来存储下拉框中的选项
selected_option = tk.StringVar(root)
selected_option.set('Option 1')
# 创建一个OptionMenu并将selected_option变量传递给它
option_menu = tk.OptionMenu(root, selected_option, 'Option 1', 'Option 2', 'Option 3')
option_menu.pack()
# 定义一个函数来处理下拉框选项的变化
def handle_option_change(*args):
selected_value = selected_option.get()
print(selected_value)
# 监听selected_option变量的变化
selected_option.trace('w', handle_option_change)
root.mainloop()
```
在这个例子中,我们首先创建了一个`tk.StringVar()`类型的变量`selected_option`,并将其传递给了`tk.OptionMenu()`函数。然后,我们定义了一个`handle_option_change()`函数,该函数会在用户选择下拉框选项时被触发,并打印所选选项的值。最后,我们使用`trace()`方法监听`selected_option`变量的变化,并将`handle_option_change()`函数作为回调函数传递给它,以实现在用户选择下拉框选项时触发一个函数。