linuxport: Merging in the fruits of my labors (Python VFS)
[xbmc:xbmc-antiquated.git] / xbmc / lib / libPython / Python / Demo / tkinter / matt / radiobutton-simple.py
1 from Tkinter import *
2
3 # This is a demo program that shows how to
4 # create radio buttons and how to get other widgets to
5 # share the information in a radio button.
6 #
7 # There are other ways of doing this too, but
8 # the "variable" option of radiobuttons seems to be the easiest.
9 #
10 # note how each button has a value it sets the variable to as it gets hit.
11
12
13 class Test(Frame):
14     def printit(self):
15         print "hi"
16
17     def createWidgets(self):
18
19         self.flavor = StringVar()
20         self.flavor.set("chocolate")
21
22         self.radioframe = Frame(self)
23         self.radioframe.pack()
24
25         # 'text' is the label
26         # 'variable' is the name of the variable that all these radio buttons share
27         # 'value' is the value this variable takes on when the radio button is selected
28         # 'anchor' makes the text appear left justified (default is centered. ick)
29         self.radioframe.choc = Radiobutton(
30             self.radioframe, text="Chocolate Flavor",
31             variable=self.flavor, value="chocolate",
32             anchor=W)
33         self.radioframe.choc.pack(fill=X)
34
35         self.radioframe.straw = Radiobutton(
36             self.radioframe, text="Strawberry Flavor",
37             variable=self.flavor, value="strawberry",
38             anchor=W)
39         self.radioframe.straw.pack(fill=X)
40
41         self.radioframe.lemon = Radiobutton(
42             self.radioframe, text="Lemon Flavor",
43             variable=self.flavor, value="lemon",
44             anchor=W)
45         self.radioframe.lemon.pack(fill=X)
46
47         # this is a text entry that lets you type in the name of a flavor too.
48         self.entry = Entry(self, textvariable=self.flavor)
49         self.entry.pack(fill=X)
50         self.QUIT = Button(self, text='QUIT', foreground='red',
51                            command=self.quit)
52         self.QUIT.pack(side=BOTTOM, fill=BOTH)
53
54
55     def __init__(self, master=None):
56         Frame.__init__(self, master)
57         Pack.config(self)
58         self.createWidgets()
59
60 test = Test()
61
62 test.mainloop()