In this Python Tkinter GUI tutorial, we will learn how to use the .config() method to update widgets in a Tkinter GUI application. The .config() method allows us to change the attributes of our widgets dynamically while the program is running. This can be useful when we want to update the appearance or behavior of our widgets based on user input or other events.
To demonstrate how to use the .config() method, we will create a simple Tkinter GUI application that contains a button and a label. When the button is clicked, the label text will be updated to display a new message.
Let’s start by creating a new Python file and importing the necessary modules:
import tkinter as tk
Next, let’s create the main application window and add a button and a label to it:
root = tk.Tk()
root.title("Update Widgets Tutorial")
label = tk.Label(root, text="Hello, World!")
label.pack()
def update_label():
label.config(text="Button Clicked!")
button = tk.Button(root, text="Click Me", command=update_label)
button.pack()
root.mainloop()
In this code snippet, we create a new Tkinter window and set its title to "Update Widgets Tutorial". We then create a label with the text "Hello, World!" and add it to the window using the pack() method. Next, we define a function called update_label() that will be called when the button is clicked. Inside this function, we use the .config() method of the label widget to update its text to "Button Clicked!". Finally, we create a button with the text "Click Me" and set its command parameter to call the update_label() function when clicked.
Now if you run the code, you should see a window with a label displaying "Hello, World!" and a button labeled "Click Me". When you click the button, the label text will be updated to "Button Clicked!".
You can use the .config() method to update other attributes of widgets as well, such as their color, font, size, and position. For example, you can update the background color of a widget like this:
widget.config(bg="red")
You can also update multiple attributes at once by passing a dictionary of attribute-value pairs to the .config() method:
widget.config(bg="blue", font=("Arial", 12), text="New Text")
In this tutorial, we learned how to use the .config() method to update widgets in a Tkinter GUI application. This can be a powerful tool for creating dynamic and interactive user interfaces. Experiment with different attributes and values to customize the appearance and behavior of your widgets. Have fun coding!
▶️ Watch Entire Tkinter Playlist ✅ Subscribe To My YouTube Channel:
http://bit.ly/2UFLKgj http://bit.ly/2IGzvOR
▶️ See More At: ✅ Join My Facebook Group:
https://Codemy.com http://bit.ly/2GFmOBz
▶️ Learn to Code at https://Codemy.com ✅ Buy a Codemy T-Shirt!
Take $30 off with coupon code: youtube1 http://bit.ly/2VC9WUN
do you necessarily need to define a function or can u just write label.config anywhere in ur code?
Thank you for the Video! Just 1 question:
How can I change the selection-options from a dropdown by klicking a button?
A dropdown doesnt have a kex that I can change in the .config(), right?
Thank you 🙂
I have a doubt…can we change window state like root.config(root.state("zoomed"))😶…or is there any other way for doing so??
Love your videos. If I create several labels with a loop (for a formatted table), can I go back and access each label with .config ? Doesn't seem to let me 😞
using .config(): How can I create a program that changes my Entry widget text color blue when a button is clicked – but if the user types in a new string, the text color goes back to default?
Thanks!
Eres dios, te amo pelón. Gracias por tanto y perdón por tan poco.
i'm having trouble using config with a canvas because I'm wanting to update a multi-line table
Hi john,
I don't know if it only happens with me or everybody, every time I use the function .config() it gives me a error "AttributeError: 'NoneType' object has no attribute 'config ". Can you help me help fix pls.
Thanks
are you able to change what window the label appears on with config?
for example:
label = tk.Label(mainWindow, other configurations)
# and then later you can say
label.config(otherWindow) # or something like this as this doesn't work for me
Thanks in advance 🙂
I have doubt that config () work only when we write pack statement like this;
button=Button(root,text="click me",bg="red")
button.pack()
And give an error if i write like this:
button=Button(root,text="click me",bg="red").pack()
Why??
Thank you so much! whenever I saw the .config() command in tkinter I got just confused but now my doubt is absolutely clear. I wish I could give another like.
config does not show up as a method for label for me for some reason.
As I just learned after a few hours of trying and crying… ".config" doesn't work, if you are in a while – loop.
Apparently you need to use threading to get it done – I'll have to learn about that next.
I want to display value of a variable in an entry widget.. How can I do that, could you please help?
is it possible to configure the position of a widget?
I want to make that if you click there comes a text and if you click the button again the comes a new text how do i make it,please?
Coooool!, Thank you!
Thank you man! I figured out how to finish the code for my first program with this video. It randomly selects a chord progression from a bank of thousands of midi progressions and updates the label with the file name. I'm planning on adding drag and drop to a DAW next and a few other features. Thanks for the tutorials!