Staging
v0.5.1
https://github.com/python/cpython
Raw File
Tip revision: ba0b6aeda605bec73c90f93fc05dd1cbc4efa9d3 authored by cvs2svn on 12 January 1995, 12:42:09 UTC
This commit was manufactured by cvs2svn to create tag 'r12beta1'.
Tip revision: ba0b6ae
dialog-box.py
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()
back to top