Python 2.7 Tkinter - Determine which Radiobutton has been selected

前端 未结 2 845
滥情空心
滥情空心 2020-12-21 10:25

Assuming the following code has been written:

self.firstRadioButton = Radiobutton(self.__canvas, text="ONE", fg=\'white\', bg=BACKGROUND_COLOR, vari         


        
2条回答
  •  北荒
    北荒 (楼主)
    2020-12-21 10:59

    The key is to make sure that both radiobuttons share the same variable. Then, to know which one is selected you simply need to get the value of the variable.

    Here is an example:

    import tkinter
    
    # function that is called when you select a certain radio button
    def selected():
        print(var.get())
    
    
    root = tkinter.Tk()
    
    var = tkinter.StringVar() #used to get the 'value' property of a tkinter.Radiobutton
    
    # Note that I added a command to each radio button and a different 'value'
    # When you press a radio button, its corresponding 'command' is called.
    # In this case, I am linking both radio buttons to the same command: 'selected'
    
    rb1 = tkinter.Radiobutton(text='Radio Button 1', variable=var, 
                              value="Radio 1", command=selected)
    rb1.pack()
    rb2 = tkinter.Radiobutton(text='Radio Button 2', variable=var, 
                              value="Radio 2", command=selected)
    rb2.pack()
    
    root.mainloop()
    

提交回复
热议问题