1

I am working on a color matching learning game. When you click the colored square, a pop up window will show you the name of the color, typed in the corresponding color, as well as pronounce the color.

During development, I ran into an issue where tkinter would not display my .gif image (which is the typed color) on the top level window, which opens after a color is selected.

I started adding additional widgets to the top level window to attempt to figure out the issue. However, I accidentally left of the parentheses at the end of pack on the second label I added.

Sure enough, my image showed. When I went back to add the missing parentheses, my image stopped showing??

def callback(event):
    print ("clicked at", event.x, event.y)
    
    if 30 < event.x < 120:
        print("Red")
        top = tk.Toplevel()
        diagrams = tk.PhotoImage(file='Red.gif')
        logolbl= tk.Label(top, text = "Red",  image = diagrams).pack()
        btn = tk.Button(top, text="Back").pack()
        
        ##### this is the label I am referring to #####
        tk.Label(top, text = "why does this fix it?").pack
       
    if 150 < event.x <240 :
        print("Green") 
    if 270 < event.x < 370:
        print("Blue")

This is a screen shot of it displaying the image, with the missing parentheses

This is a screen shot of the second label commented out, and my image not showing

Has anyone experienced this?

I mean technically I can work with this, however, I understand it is incorrect.

I'd like to have an understanding of what I am doing wrong, and what is happening "behind the scenes"

Community
  • 1
  • 1

0 Answers0