mirror of https://github.com/python/cpython
66 lines
2.4 KiB
Python
66 lines
2.4 KiB
Python
|
from Tkinter import *
|
||
|
|
||
|
# this shows how to create a new window with a button in it that can create new windows
|
||
|
|
||
|
class Test(Frame):
|
||
|
def printit(self):
|
||
|
print "hi"
|
||
|
|
||
|
def makeWindow(self):
|
||
|
# there is no Tkinter interface to the dialog box. Making one would mean putting
|
||
|
# a few wrapper functions in the Tkinter.py file.
|
||
|
# even better is to put in a SUIT-like selection of commonly-used dialogs.
|
||
|
# the parameters to this call are as follows:
|
||
|
|
||
|
fred = Toplevel() # a toplevel window that the dialog goes into
|
||
|
|
||
|
|
||
|
# this function returns the index of teh button chosen. In this case, 0 for "yes" and 1 for "no"
|
||
|
|
||
|
print self.tk.call("tk_dialog", # the command name
|
||
|
fred, # the name of a toplevel window
|
||
|
"fred the dialog box", # the title on the window
|
||
|
"click on a choice", # the message to appear in the window
|
||
|
"info", # the bitmap (if any) to appear. If no bitmap is desired, pass ""
|
||
|
# legal values here are:
|
||
|
# string what it looks like
|
||
|
# ----------------------------------------------
|
||
|
# error a circle with a slash through it
|
||
|
# grey25 grey square
|
||
|
# grey50 darker grey square
|
||
|
# hourglass use for "wait.."
|
||
|
# info a large, lower case "i"
|
||
|
# questhead a human head with a "?" in it
|
||
|
# question a large "?"
|
||
|
# warning a large "!"
|
||
|
# @fname any X bitmap where fname is the path to the file
|
||
|
#
|
||
|
"0", # the index of the default button choice. hitting return selects this
|
||
|
"yes", "no") # all remaining parameters are the labels for the
|
||
|
# buttons that appear left to right in the dialog box
|
||
|
|
||
|
|
||
|
|
||
|
def createWidgets(self):
|
||
|
self.QUIT = Button(self, {'text': 'QUIT',
|
||
|
'fg': 'red',
|
||
|
'command': self.quit})
|
||
|
|
||
|
self.QUIT.pack({'side': 'left', 'fill': 'both'})
|
||
|
|
||
|
|
||
|
# a hello button
|
||
|
self.hi_there = Button(self, {'text': 'Make a New Window',
|
||
|
'command' : self.makeWindow})
|
||
|
self.hi_there.pack({'side': 'left'})
|
||
|
|
||
|
|
||
|
def __init__(self, master=None):
|
||
|
Frame.__init__(self, master)
|
||
|
Pack.config(self)
|
||
|
self.windownum = 0
|
||
|
self.createWidgets()
|
||
|
|
||
|
test = Test()
|
||
|
test.mainloop()
|