Как изменить размер изображения с помощью ImageTk / Image из PIL - PullRequest
0 голосов
/ 29 мая 2020

Вот полный код

import tkinter as tk
from PIL import ImageTk, Image

def hide_screen():
    window.overrideredirect(0)
    window.iconify()

def screen_appear(event):
    window.overrideredirect(1)

def callback(event):
    window.geometry("+{0}+{1}".format(event.x_root,event.y_root))

window = tk.Tk()
window.geometry("400x200")
window.overrideredirect(True)

title_bar = tk.Frame(window, bg="#2c2c2c", bd=0)

title_bar_logo = ImageTk.PhotoImage(Image.open("title_bar_logo.png"))
title_bar_logo = ImageTk.resize((250, 250), Image.ANTIALIAS)
panel = tk.Label(title_bar, image=title_bar_logo)
label1 = tk.Label(title_bar, text="Title Bar", fg="gold2", bg="#2c2c2c", font="Times")
close_button = tk.Button(title_bar, text="X", bg="red", command=window.destroy, bd=0)
minimise_button = tk.Button(title_bar, text="-", bg="red", command=hide_screen, bd=0)

window2 = tk.Canvas(window, bg="#1b1b1b", highlightthickness=0)

title_bar.pack(fill="x")
panel.pack(side=tk.LEFT)
close_button.pack(side=tk.RIGHT)
minimise_button.pack(side=tk.RIGHT)
window2.pack(expand=1, fill="x")
label1.pack(anchor=tk.CENTER)

title_bar.bind("<Map>", screen_appear)
title_bar.bind("<B1-Motion>", callback)
window.mainloop()

А вот строки изображения

title_bar_logo = ImageTk.PhotoImage(Image.open("title_bar_logo.png"))
title_bar_logo = ImageTk.resize((250, 250), Image.ANTIALIAS)
panel = tk.Label(title_bar, image=title_bar_logo)
panel.pack(side=tk.LEFT)

Я пробовал очень много вещей, но не могу заставить его работать, и я действительно надеюсь, вы найдете для меня ответ

заранее спасибо

1 Ответ

0 голосов
/ 29 мая 2020

Я использую его в качестве примера, он работает хорошо:

logo = Image.open("title_bar_logo.png")
logo = logo.resize((20,15), Image.ANTIALIAS)
title_bar_logo=ImageTk.PhotoImage(logo)

используйте:

title_bar_logo

в вашем коде

...