Greg,

Run the following code to see how pack_forget() or 
grid_forget() works, it makes previous widgets 
disappear but not go away.  If you call grid() or 
pack() again after using grid_forget() the widget 
returns. 


root = Tk()
class Ktest:
    def __init__(self):
        self.Ftest1()

    def  Ftest1(self):

        try:    
            self.test2.grid_forget()
        except AttributeError :
            pass
        self.test1 = Button(root, text='Push #1
               button', bg = 'yellow', width = 25,
                command = self.Ftest2,
                 height = 25)
        self.test1.grid(row=0, column=0)


    def Ftest2(self):
       self.test1.grid_forget()
       self.test2 = Button(root, text='Push #2 
                       button', bg = 'green',
                         width = 15,
                        command = self.Ftest1,
                         height = 10)
       self.test2.grid(row=0, column=0)

if __name__==  '__main__' :
    Ktest()
    mainloop()



Maybe someone else has an idea about not defining 
a variable.  

My question is how does a budket of wires and 
screws know its a bucket of wires and screws 
unless someone tells it that it's a bucket of 
wires and screws? 








On Tuesday 07 November 2006 09:35, 
[EMAIL PROTECTED] wrote:
> Hi all,
>
> I'm trying to write a GUI that will put up
> multiple widgets in succession. My problem is
> that each widget also contains the previous
> widgets when they pop up. How do I reinitialize
> the widget each time so that it doesn't contain
> earlier ones? Actually, another question I have
> is, is there a way to set python so that it
> will assume any undefined variable is 0 or ''?
> That is, I have several statements like "If k >
> 0 then so and so" and I would like it to assume
> k=0 unless I tell it otherwise. I've just been
> defining k=0 at the start of the program but it
> seems there should be a better way.
>
> Greg
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to