cinap_lenrekadd hg and python4bb9e2215 years agoHistory
119 lines · 3.9 KB · Python
RawDownload
# -*-mode: python; fill-column: 75; tab-width: 8; coding: iso-latin-1-unix -*-## $Id: NoteBook.py 36560 2004-07-18 06:16:08Z tim_one $## Tix Demostration Program## This sample program is structured in such a way so that it can be# executed from the Tix demo program "tixwidgets.py": 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()