mirror of
				https://github.com/python/cpython.git
				synced 2025-10-30 21:21:22 +00:00 
			
		
		
		
	
		
			
	
	
		
			120 lines
		
	
	
	
		
			3.8 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
		
		
			
		
	
	
			120 lines
		
	
	
	
		
			3.8 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
|   | #!/usr/local/bin/python | ||
|  | #  | ||
|  | # $Id$ | ||
|  | # | ||
|  | # Tix Demostration Program | ||
|  | # | ||
|  | # This sample program is structured in such a way so that it can be | ||
|  | # executed from the Tix demo program "tixwidgets": it must have a | ||
|  | # procedure called "RunSample". It should also have the "if" statment | ||
|  | # at the end of this file so that it can be run as a standalone | ||
|  | # program. | ||
|  | 
 | ||
|  | # This file demonstrates the use of the tixNoteBook widget, which allows | ||
|  | # you to lay out your interface using a "notebook" metaphore | ||
|  | # | ||
|  | import Tix | ||
|  | 
 | ||
|  | def RunSample(w): | ||
|  |     global root | ||
|  |     root = w | ||
|  | 
 | ||
|  |     # We use these options to set the sizes of the subwidgets inside the | ||
|  |     # notebook, so that they are well-aligned on the screen. | ||
|  |     prefix = Tix.OptionName(w) | ||
|  |     if prefix: | ||
|  | 	prefix = '*'+prefix | ||
|  |     else: | ||
|  | 	prefix = '' | ||
|  |     w.option_add(prefix+'*TixControl*entry.width', 10) | ||
|  |     w.option_add(prefix+'*TixControl*label.width', 18) | ||
|  |     w.option_add(prefix+'*TixControl*label.anchor', Tix.E) | ||
|  |     w.option_add(prefix+'*TixNoteBook*tagPadX', 8) | ||
|  | 
 | ||
|  |     # Create the notebook widget and set its backpagecolor to gray. | ||
|  |     # Note that the -backpagecolor option belongs to the "nbframe" | ||
|  |     # subwidget. | ||
|  |     nb = Tix.NoteBook(w, name='nb', ipadx=6, ipady=6) | ||
|  |     nb['bg'] = 'gray' | ||
|  |     nb.nbframe['backpagecolor'] = 'gray' | ||
|  | 	 | ||
|  |     # Create the two tabs on the notebook. The -underline option | ||
|  |     # puts a underline on the first character of the labels of the tabs. | ||
|  |     # Keyboard accelerators will be defined automatically according | ||
|  |     # to the underlined character.	 | ||
|  |     nb.add('hard_disk', label="Hard Disk", underline=0) | ||
|  |     nb.add('network', label="Network", underline=0) | ||
|  | 	 | ||
|  |     nb.pack(expand=1, fill=Tix.BOTH, padx=5, pady=5 ,side=Tix.TOP) | ||
|  | 
 | ||
|  |     #---------------------------------------- | ||
|  |     # Create the first page | ||
|  |     #---------------------------------------- | ||
|  |     # Create two frames: one for the common buttons, one for the | ||
|  |     # other widgets | ||
|  |     # | ||
|  |     tab=nb.hard_disk | ||
|  |     f = Tix.Frame(tab) | ||
|  |     common = Tix.Frame(tab) | ||
|  | 	 | ||
|  |     f.pack(side=Tix.LEFT, padx=2, pady=2, fill=Tix.BOTH, expand=1) | ||
|  |     common.pack(side=Tix.RIGHT, padx=2, fill=Tix.Y) | ||
|  | 	 | ||
|  |     a = Tix.Control(f, value=12,   label='Access time: ') | ||
|  |     w = Tix.Control(f, value=400,  label='Write Throughput: ') | ||
|  |     r = Tix.Control(f, value=400,  label='Read Throughput: ') | ||
|  |     c = Tix.Control(f, value=1021, label='Capacity: ') | ||
|  | 	 | ||
|  |     a.pack(side=Tix.TOP, padx=20, pady=2) | ||
|  |     w.pack(side=Tix.TOP, padx=20, pady=2) | ||
|  |     r.pack(side=Tix.TOP, padx=20, pady=2) | ||
|  |     c.pack(side=Tix.TOP, padx=20, pady=2) | ||
|  | 	 | ||
|  |     # Create the common buttons | ||
|  |     createCommonButtons(common) | ||
|  | 	 | ||
|  |     #---------------------------------------- | ||
|  |     # Create the second page	 | ||
|  |     #---------------------------------------- | ||
|  | 	 | ||
|  |     tab = nb.network | ||
|  | 
 | ||
|  |     f = Tix.Frame(tab) | ||
|  |     common = Tix.Frame(tab) | ||
|  | 	 | ||
|  |     f.pack(side=Tix.LEFT, padx=2, pady=2, fill=Tix.BOTH, expand=1) | ||
|  |     common.pack(side=Tix.RIGHT, padx=2, fill=Tix.Y) | ||
|  | 	 | ||
|  |     a = Tix.Control(f, value=12,   label='Access time: ') | ||
|  |     w = Tix.Control(f, value=400,  label='Write Throughput: ') | ||
|  |     r = Tix.Control(f, value=400,  label='Read Throughput: ') | ||
|  |     c = Tix.Control(f, value=1021, label='Capacity: ') | ||
|  |     u = Tix.Control(f, value=10,   label='Users: ') | ||
|  | 	 | ||
|  |     a.pack(side=Tix.TOP, padx=20, pady=2) | ||
|  |     w.pack(side=Tix.TOP, padx=20, pady=2) | ||
|  |     r.pack(side=Tix.TOP, padx=20, pady=2) | ||
|  |     c.pack(side=Tix.TOP, padx=20, pady=2) | ||
|  |     u.pack(side=Tix.TOP, padx=20, pady=2) | ||
|  | 	 | ||
|  |     createCommonButtons(common) | ||
|  | 	 | ||
|  | def doDestroy(): | ||
|  |     global root | ||
|  |     root.destroy() | ||
|  | 
 | ||
|  | def createCommonButtons(master): | ||
|  |     ok = Tix.Button(master, name='ok', text='OK', width=6,  | ||
|  | 		command=doDestroy) | ||
|  |     cancel = Tix.Button(master, name='cancel',  | ||
|  | 		    text='Cancel', width=6,  | ||
|  | 		    command=doDestroy) | ||
|  |      | ||
|  |     ok.pack(side=Tix.TOP, padx=2, pady=2) | ||
|  |     cancel.pack(side=Tix.TOP, padx=2, pady=2)	 | ||
|  | 
 | ||
|  | if __name__ == '__main__': | ||
|  |     root = Tix.Tk() | ||
|  |     RunSample(root) | ||
|  |     root.mainloop() |