Images in tkinter - Printable Version +- Python Forum (https://python-forum.io) +-- Forum: Python Coding (https://python-forum.io/forum-7.html) +--- Forum: GUI (https://python-forum.io/forum-10.html) +--- Thread: Images in tkinter (/thread-26244.html) |
Images in tkinter - menator01 - Apr-25-2020 I've been posing on here about my learning project as some of you have read. Currently I'm working on learning more on classes and methods. While re-writing my script something unexpected happened. The original code will show the header image but, the re-written code will not. I can put text on the label and it will work. I can put color on the container frame and widget. I can even use tk.Label and the size of the container will be there.(See image below) For the life of me, I can't seem to get the image to show. [Image: book.png] Relevant code import tkinter as tk from tkinter import ttk class RootWindow: '''RootWindow''' def __init__(self, master): self.master = master self.master.grid_columnconfigure(0, weight=1) self.master.rowconfigure(0, weight=1) self.logo_frame() Child(self.logoframe) def logo_frame(self): '''logo frame''' style= ttk.Style() style.configure('TY.TFrame', background='orange') self.logoframe = ttk.Frame(self.master, border=5, relief='ridge', style='TY.TFrame') self.logoframe.grid(column=0, row=0, sticky='new') self.logoframe.grid_columnconfigure(0, weight=3) class Child: '''Child''' def __init__(self, logoframe): self.my_logo(logoframe) def my_logo(self, logoframe): '''logo''' self.imgfile = tk.PhotoImage(file='/home/johnny/Desktop/CookBook/images/cookbook_logo.png') img_logo = tk.Label(logoframe, image=self.imgfile, anchor='n', bg='pink') img_logo.grid(column=0, row=0, sticky='new') def main(): '''main''' root = tk.Tk() root.resizable(width=False, height=False) RootWindow(root) root.mainloop() if __name__ == '__main__': main() |