For some reason when I run my program the image doesn't show. I only get a greyed out box and no errors when running. What I want is when the user clicks the upload button a second window will open and ask for their email address and password. The file I want in that greyed out position is a logo (above the email request). The files cats.jfif is in the same folder as my program. Ultimately I would like to add in a png image (don't know if that matters or not). Code and image of output is below:
import tkinter as tk
from tkinter import ttk
import tkinter.font as tkFont
from PIL import ImageTk
from PIL import Image as PilImage
class Other:
    def __init__(self,master):
        self.width = 300
        self.height = 500
        master.geometry(f"{self.width}x{self.height}")
        self.frame = tk.Frame(master,bg="white")
        self.frame.place(relx=0, rely=0, relwidth=1, relheight=1)
        self.font = ('Helvetica', '10')
        self.uploadButton = tk.Button(self.frame, text="Upload", bg="orange", fg="white", font=self.font,
                                command = self.Upload)
        self.uploadButton.place(relx=0.001, rely=0.865, relwidth=0.999, relheight=0.13)
    def Upload(self):
        #HAVE TO CHECK IF FILE EXISTS IN THE FOLDER
        #f"{self.date}_iProdi.xlsx"
        login = tk.Toplevel()
        login.geometry("300x500")
        self.frame2 = tk.Frame(login, bg = "white")
        self.frame2.place(relx=0, rely=0, relwidth=1, relheight=1)
        img = ImageTk.PhotoImage(PilImage.open("cats.jfif"))
        self.panel = tk.Label(self.frame2, image = img)
        self.panel.place(relx=0.1, rely=0.1, relwidth=0.8, relheight=0.2)
        #Employee username
        self.emailLabel = tk.Label(self.frame2, text="Email:", font=self.font, bg="white", anchor="e")
        self.emailLabel.place(relx=0.1, rely=0.4, relwidth=0.25, relheight=0.08)
        self.emailEntry = tk.Entry(self.frame2, font=self.font, bg="white")
        self.emailEntry.place(relx=0.37, rely=0.4, relwidth=0.4, relheight=0.06)
        #Employee Password
        self.passwordLabel = tk.Label(self.frame2, text="Password:", font=self.font, bg="white", anchor="e")
        self.passwordLabel.place(relx=0.1, rely=0.56, relwidth=0.25, relheight=0.08)
        self.passwordEntry = tk.Entry(self.frame2, font=self.font, bg="white", show="*")
        self.passwordEntry.place(relx=0.37, rely=0.56, relwidth=0.4, relheight=0.06)
root = tk.Tk()
other = Other(root)
root.mainloop()

 
    