简体   繁体   English

在tkinter中为optionmenu赋值

[英]Assigning values to optionmenu in tkinter

I have a list of months which I want to show in an option menu. 我有一个要在选项菜单中显示的月份列表。 When I select a month, I want get the number of month it is. 当我选择一个月时,我想要获得的月数。 Like if Apr is selected, I want an answer that This is the fourth month 就像选择了Apr一样,我想要一个答案, This is the fourth month

I have written code as follows: 我写的代码如下:

months = {'Jan' : '1', 'Feb' : '2', 'March' : '3' , 'Apr' : '4'}
var = StringVar(root)
var.set('Jan')

OptionMenu1 = OptionMenu(root, var, *months)
OptionMenu1.pack();

I want to know, how to trigger a function on selecting a particular entry 我想知道,如何在选择特定条目时触发功能

You can use the .trace method on the StringVar() 您可以在StringVar()上使用.trace方法

from tkinter import *

root = Tk()

months = {'Jan' : '1', 'Feb' : '2', 'March' : '3' , 'Apr' : '4'}    
var = StringVar(root)
var.set('Jan')

def changing(*event):
    print(months[var.get()])
var.trace("w", changing)

OptionMenu1 = OptionMenu(root, var, *months)
OptionMenu1.pack();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM