On Wed, 2006-06-07 at 09:27 +1000, John McMonagle wrote: > On Tue, 2006-06-06 at 19:42 +0000, John Salerno wrote: > > Fredrik Lundh wrote: > > > > > however, if you need to access a widget later on, it might be a good > > > idea to save a reference to it somewhere... > > > > To follow up on that point, I have the following code now. I have two > > questions about it: > > > > 1. Can I somehow make the passing of 'master' to the draw_entry method > > automatic, so I don't have to type it each time I call the function? > > > > 2. Related to your comment, the obvious problem here is that it doesn't > > save references to the text box names, so I can't access them later. Is > > there still a way to automate the process like I've done, but have each > > entry field have a separate name? > > > > Thanks. > > > > --------------- > > > > import Tkinter as tk > > > > > > class App: > > > > def __init__(self, master): > > self.draw_entry(master, 'First Name:') > > self.draw_entry(master, 'Last Name:') > > > > def draw_entry(self, master, label_text): > > frame = tk.Frame(master, bd=4) > > frame.pack() > > self.label = tk.Label(frame, text=label_text, width=10) > > self.label.pack(side=tk.LEFT) > > self.entry = tk.Entry(frame) > > self.entry.pack(side=tk.LEFT) > > > > > > root = tk.Tk() > > app = App(root) > > root.resizable(width=False, height=False) > > root.mainloop() > > -- > > > Try this: > > import Tkinter as tk > > class App: > > def __init__(self, master): > self.parent = master > self.entry1 = self.draw_entry('First Name:') > self.entry2 = self.draw_entry('Last Name:') > > def draw_entry(self, label_text): > frame = tk.Frame(self,parent, bd=4)
Sorry - typo. Should reas self.parent not self,parent > frame.pack() > label = tk.Label(frame, text=label_text, width=10) > label.pack(side=tk.LEFT) > entry = tk.Entry(frame) > entry.pack(side=tk.LEFT) > return entry > > root = tk.Tk() > app = App(root) > root.resizable(width=False, height=False) > root.mainloop() > > > > -- > This message has been scanned for viruses and > dangerous content by MailScanner, and is > believed to be clean. > -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. -- http://mail.python.org/mailman/listinfo/python-list