mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			66 lines
		
	
	
	
		
			2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
	
		
			2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| 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", 
 | |
| 							      Pack : {"side" : "top", "fill" : "x"}})
 | |
| 
 | |
| 	self.radioframe.straw = Radiobutton (self.radioframe, {"text" : "Strawberry Flavor", 
 | |
| 							       "variable" : self.flavor,
 | |
| 							      "anchor" : "w", 
 | |
| 							       "value" : "strawberry", 
 | |
| 							       Pack : {"side" : "top", "fill" : "x"}})
 | |
| 
 | |
| 	self.radioframe.lemon = Radiobutton (self.radioframe, {"text" : "Lemon Flavor", 
 | |
| 							      "anchor" : "w", 
 | |
| 							       "variable" : self.flavor,
 | |
| 							       "value" : "lemon", 
 | |
| 							       Pack : {"side" : "top", "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, 
 | |
| 				  Pack : {"side" : "top", "fill" : "x"}})
 | |
| 	self.QUIT = Button(self, {'text': 'QUIT', 
 | |
| 				  'fg': '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()
 | 
