| from Tkinter import * |
| |
| # This is a demo program that shows how to |
| # create radio buttons and how to get other widgets to |
| # share the information in a radio button. |
| # |
| # There are other ways of doing this too, but |
| # the "variable" option of radiobuttons seems to be the easiest. |
| # |
| # note how each button has a value it sets the variable to as it gets hit. |
| |
| |
| class Test(Frame): |
| def printit(self): |
| print "hi" |
| |
| def createWidgets(self): |
| |
| self.flavor = StringVar() |
| self.flavor.set("chocolate") |
| |
| self.radioframe = Frame(self) |
| self.radioframe.pack() |
| |
| # 'text' is the label |
| # 'variable' is the name of the variable that all these radio buttons share |
| # 'value' is the value this variable takes on when the radio button is selected |
| # 'anchor' makes the text appear left justified (default is centered. ick) |
| self.radioframe.choc = Radiobutton( |
| self.radioframe, text="Chocolate Flavor", |
| variable=self.flavor, value="chocolate", |
| anchor=W) |
| self.radioframe.choc.pack(fill=X) |
| |
| self.radioframe.straw = Radiobutton( |
| self.radioframe, text="Strawberry Flavor", |
| variable=self.flavor, value="strawberry", |
| anchor=W) |
| self.radioframe.straw.pack(fill=X) |
| |
| self.radioframe.lemon = Radiobutton( |
| self.radioframe, text="Lemon Flavor", |
| variable=self.flavor, value="lemon", |
| anchor=W) |
| self.radioframe.lemon.pack(fill=X) |
| |
| # this is a text entry that lets you type in the name of a flavor too. |
| self.entry = Entry(self, textvariable=self.flavor) |
| self.entry.pack(fill=X) |
| self.QUIT = Button(self, text='QUIT', foreground='red', |
| command=self.quit) |
| self.QUIT.pack(side=BOTTOM, fill=BOTH) |
| |
| |
| def __init__(self, master=None): |
| Frame.__init__(self, master) |
| Pack.config(self) |
| self.createWidgets() |
| |
| test = Test() |
| |
| test.mainloop() |