Hello,
I am creating a new applications and i need to know how to couple a root.destroy and functionx() command to one button? I've tried to put the destroy command in functhonx() but that doesn't seem to work. Any ideas?

Also, I am wondering if it's possible to refresh the toplevel window to get rid of old Labels and display new ones. Any help will be greatly appreciated.

Thank You.

Recommended Answers

All 10 Replies

Create a frame in your top window and put your widgets on that. A frame destroy will destroy the frame and the widgets on it. Now you can create a new frame and widget set.

I've tried that but no luck. I wanna basically push a button and have the old labels disapear and the updated ones appear.

Looks like you need something simple like this:

import Tkinter as tk

def change_labels():
    label1.config(text='I need someone real bad.')
    label2.config(text='Are you real bad?')


root = tk.Tk()

label1 = tk.Label(root, text='Be alert.', width=50)
label2 = tk.Label(root, text='The world needs more lerts.', width=50)
button = tk.Button(root, text="Change Labels", command=change_labels)

# position the widgets
label1.grid(row=0, column=0, pady=5)
label2.grid(row=1, column=0, pady=5)
button.grid(row=2, column=0, pady=15)

root.mainloop()

May be you can keep the same label and update it's content. There is a nice way to do this with a Tkinter variable, described in this page http://effbot.org/tkinterbook/label.htm

I've tryed this but I got lost in the jargom. I'll try it again

I think the problem might be that i'm in a class. I'll see if I can restructure the class to make it work.

I am also having trouble coupling a destroy and functionx() command with one button. How do i do that

I think the question is difficult to understand. May be you should describe what you expect when the user pushes the button. Normally, with the button's command option, you can call a function or method, and you can do anything you want in this method.

Im trying to have the user quit a window and the program perform a function at the same time. I tried to put the destroy command in the fuunction but that doesn't work

hm , post the function !

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.