How do I make the background of a tkinter label transparent so only the text is seen? How do I make the background of a tkinter label transparent so only the text is seen? tkinter tkinter

How do I make the background of a tkinter label transparent so only the text is seen?


I don't think you can make a Label transparent.

You can create text on a Canvas though, this text by default doesn't have a background:

import datetimeimport tkinter as tkdef round_time(dt, round_to):    seconds = (dt - dt.min).seconds    rounding = (seconds + round_to / 2) // round_to * round_to    return dt + datetime.timedelta(0, rounding - seconds, -dt.microsecond)def ct():    def count():        now = round_time(datetime.datetime.now(), round_to=1)        eh = datetime.datetime(2019, 3, 31, 20, 30)        tte = eh - now        canvas.itemconfig(label_cd, text=str(tte))        root.after(50, count)    count()root = tk.Tk()root.title("Earth Hour Countdown!")now = round_time(datetime.datetime.now(), round_to=1)eh = datetime.datetime(2019, 3, 31, 20, 30)tte = eh - nowcanvas = tk.Canvas(root, height=360, width=1333)canvas.pack()bg_img = tk.PhotoImage(file="C:/Users/bmg/Desktop/eh1.gif")bg_label = canvas.create_image((0,0), image=bg_img, anchor=tk.N+tk.W)label_msg = canvas.create_text((410, 120), text="Earth Hour Countdown:", font="MSGothic 50 bold", fill="#652828")label_cd = canvas.create_text((1030,120), text=str(tte), font="MSGothic 50 bold", fill="#652828")ehtime_label = canvas.create_text((650,240), text=("Earth Hour:" + eh.strftime("%d-%m-%Y %H:%M:%S")), font="MSGothic 50 bold", fill="#652828")ct()root.mainloop()

Note that this also requires some changes to the placement of the text and how to update it. I've tried to keep things as close to your example as possible. Do note that not having a background for your text might not give you the readability you'd like:

enter image description here