blob: af6f876699429536b6880c8e30c7ce487e128e6c [file] [log] [blame]
Guido van Rossum35820f71994-10-07 09:55:26 +00001from Tkinter import *
2
3import sys
Guido van Rossum60cc90e1999-04-08 15:18:12 +00004##sys.path.append("/users/mjc4y/projects/python/tkinter/utils")
5##from TkinterUtils import *
Guido van Rossum35820f71994-10-07 09:55:26 +00006
Guido van Rossum89cb67b1996-07-30 18:57:18 +00007# this shows how to create a new window with a button in it that
8# can create new windows
Guido van Rossum35820f71994-10-07 09:55:26 +00009
Guido van Rossum60cc90e1999-04-08 15:18:12 +000010class QuitButton(Button):
11 def __init__(self, master, *args, **kwargs):
Collin Winter6f2df4d2007-07-17 20:59:35 +000012 if "text" not in kwargs:
Guido van Rossum60cc90e1999-04-08 15:18:12 +000013 kwargs["text"] = "QUIT"
Collin Winter6f2df4d2007-07-17 20:59:35 +000014 if "command" not in kwargs:
Guido van Rossum60cc90e1999-04-08 15:18:12 +000015 kwargs["command"] = master.quit
Neal Norwitzd9108552006-03-17 08:00:19 +000016 Button.__init__(self, master, *args, **kwargs)
Guido van Rossum35820f71994-10-07 09:55:26 +000017
18class Test(Frame):
19 def makeWindow(self, *args):
Tim Peters182b5ac2004-07-18 06:16:08 +000020 fred = Toplevel()
Guido van Rossum35820f71994-10-07 09:55:26 +000021
Tim Peters182b5ac2004-07-18 06:16:08 +000022 fred.label = Canvas (fred, width="2i", height="2i")
Guido van Rossum35820f71994-10-07 09:55:26 +000023
Tim Peters182b5ac2004-07-18 06:16:08 +000024 fred.label.create_line("0", "0", "2i", "2i")
25 fred.label.create_line("0", "2i", "2i", "0")
26 fred.label.pack()
Guido van Rossum35820f71994-10-07 09:55:26 +000027
Tim Peters182b5ac2004-07-18 06:16:08 +000028 ##centerWindow(fred, self.master)
Guido van Rossum35820f71994-10-07 09:55:26 +000029
30 def createWidgets(self):
Tim Peters182b5ac2004-07-18 06:16:08 +000031 self.QUIT = QuitButton(self)
32 self.QUIT.pack(side=LEFT, fill=BOTH)
Guido van Rossum35820f71994-10-07 09:55:26 +000033
Tim Peters182b5ac2004-07-18 06:16:08 +000034 self.makeWindow = Button(self, text='Make a New Window',
35 width=50, height=20,
36 command=self.makeWindow)
37 self.makeWindow.pack(side=LEFT)
Guido van Rossum35820f71994-10-07 09:55:26 +000038
39 def __init__(self, master=None):
Tim Peters182b5ac2004-07-18 06:16:08 +000040 Frame.__init__(self, master)
41 Pack.config(self)
42 self.createWidgets()
Guido van Rossum35820f71994-10-07 09:55:26 +000043
44test = Test()
45test.mainloop()