【问题标题】:Python tkinter variable not working in radiobuttonPython tkinter 变量在单选按钮中不起作用
【发布时间】:2017-08-22 19:41:44
【问题描述】:

我有这个代码。这给了我用户通过单选按钮所做的选择。 但不幸的是它只选择零。

代码:

QueryResults=Tk.Tk()
        row_no=0
        Tk.Label(QueryResults,text="Name ").grid(row=row_no,column=0,padx=5,pady=10)
        Tk.Label(QueryResults,text="Source ").grid(row=row_no,column=1,padx=5,pady=10)
        Tk.Label(QueryResults,text="Destination ").grid(row=row_no,column=2,padx=5,pady=10)
        Tk.Label(QueryResults,text="Source Time ").grid(row=row_no,column=3,padx=5,pady=10)
        Tk.Label(QueryResults,text="Destination Time ").grid(row=row_no,column=4,padx=5,pady=10)
        Tk.Label(QueryResults,text="Economy Fare(per person) ").grid(row=row_no,column=5,padx=5,pady=10)            
        Tk.Label(QueryResults,text="Executive Fare(per person) ").grid(row=row_no,column=6,padx=5,pady=10)
        Tk.Label(QueryResults,text="Via ").grid(row=row_no,column=7,padx=5,pady=10) 
        ms=Tk.IntVar()
        def sel2():
            print ms.get()
        for flight in Flights_record:
            row_no=row_no+1
            Tk.Radiobutton(QueryResults,text=flight["Name"],variable=ms,value=row_no+5,command=sel2).grid(row=row_no,column=0,padx=5,pady=10)
            Tk.Label(QueryResults,text=values["Source"]).grid(row=row_no,column=1,padx=5,pady=10)
            Tk.Label(QueryResults,text=values["Destination"]).grid(row=row_no,column=2,padx=5,pady=10)
            Tk.Label(QueryResults,text=flight["Source Time"]).grid(row=row_no,column=3,padx=5,pady=10)
            Tk.Label(QueryResults,text=flight["Destination Time"]).grid(row=row_no,column=4,padx=5,pady=10)
            Tk.Label(QueryResults,text=flight["Economy Fare"]).grid(row=row_no,column=5,padx=5,pady=10)            
            Tk.Label(QueryResults,text=flight["Executive Fare"]).grid(row=row_no,column=6,padx=5,pady=10)
            Tk.Label(QueryResults,text=" ,".join(flight["Via"])).grid(row=row_no,column=7,padx=5,pady=10) 
        def book_flight():
            print Flights_record[ms.get()]                
        Tk.Button(QueryResults,text="Submit",command=book_flight).grid(row=row_no+1,columnspan=7,padx=5,pady=10)
        QueryResults.mainloop()

输出: 0 0 0 0 0 0 (关于选择)。 为什么变量不起作用?

【问题讨论】:

    标签: python tkinter radio-button


    【解决方案1】:

    抱歉,我确实发现了我的错误。

    ms=Tk.IntVar() 需要是 ms=Tk.IntVar(QueryResults)

    【讨论】:

      猜你喜欢
      • 2016-09-01
      • 2014-05-06
      • 2015-06-15
      • 2015-09-11
      • 2011-10-18
      • 2016-09-11
      • 1970-01-01
      • 2020-06-26
      • 1970-01-01
      相关资源
      最近更新 更多