单选按钮的 tkinter 'var'始终返回 0



从单选按钮列表我想知道点击了哪一个

每当单击单选按钮(在python Tkinter中(时,其返回的0...

我尝试了以下方法:

  • 声明"var"变量全局
  • 在所有函数中传递变量

但是这些步骤都不起作用

def get_date(var):
    path_read = E1.get()
    date_list = readunparseddata.getdate_unparseddate(path_read)
    show_date(date_list,var)

def show_date(list_date,var):
    print(var)
    frame = Tk()
    #v.set(1)
    Label(frame,text="""Choose your Date :""",justify=LEFT,padx=20).pack( anchor = W )
    count = 0
    for date in list_date:
        print count
        R1=Radiobutton(frame, text=date, padx=20, value=count, variable=var, command=lambda:ShowChoice(var))
        R1.pack()
        count+=1
def ShowChoice(var):
    print "option : " + str(var.get())

top = Tk()
var=IntVar()

问题出在我正在创建的 Tk(( 实例上。下面的链接(1(说使用TopLevel((解决了问题

递增选择单选按钮时调用的函数中的计数器。这里有一个例子来帮助你。它打印选择按钮的次数。

import Tkinter as tk
count=0
root = tk.Tk()
def add():
    global count
    count=count+1
    print count
v = tk.IntVar()
tk.Label(root, 
        text="""Choose a 
programming language:""",
        justify = tk.LEFT,
        padx = 20).pack()
tk.Radiobutton(root, 
              text="Python",
              padx = 20, 
              variable=v, 
              value=1,command=add).pack(anchor=tk.W)
root.mainloop()

最新更新