On Jun 1, 3:13 am, "Eric Brunel" <[EMAIL PROTECTED]> wrote: > On Thu, 31 May 2007 19:45:04 +0200, [EMAIL PROTECTED] > > <[EMAIL PROTECTED]> wrote: > > I am trying to figure out how to stack two widgets in a frame > > vertically so that they both expand horizontally and during vertical > > expansion, the top one sticks to the top of the frame and the bottom > > one consumes the remaining vertical space. I thought this would do it > > but it doesn't. What am I missing? > > [snip code] > > For this kind of stuff, don't use pack; use grid. It will be far easier to > get it working, to read afterwards and to maintain, even if it's slightly > more verbose. IMHO, pack should only be used to create rows or columns of > widgets, without any resizing policy, or to put an entire widget into a > container. If you do anything more complicated than that, you'll find grid > much easier to handle. > > HTH > -- > python -c "print ''.join([chr(154 - ord(c)) for c in > 'U(17zX(%,5.zmz5(17l8(%,5.Z*(93-965$l7+-'])"
Thanks, I basically came to the same conclusion shortly after writing my post. I got it working with grid like this: from Tkinter import * class AFrame(Frame): def __init__(self,master,**config): Frame.__init__(self,master,config) top= self.winfo_toplevel() top.columnconfigure(0,weight=1) top.rowconfigure(0,weight=1) self.grid(row=0,column=0,sticky="NEWS") self.rowconfigure(0,weight=0) self.rowconfigure(1,weight=1) self.columnconfigure(0,weight=1) self.l1= Label(self,text="abc",relief="groove") self.l1.grid(row=0,column=0,sticky="NEW") self.l2= Label(self,text="abc",relief="groove") self.l2.grid(row=1,column=0,sticky="NEWS") af= AFrame(None) mainloop() -- http://mail.python.org/mailman/listinfo/python-list