Как предотвратить уменьшение размера ярлыка tkinter?

Я создаю простую программу на Python для создания окна с использованием tkinter с фоном, хранящимся в виде изображения на компьютере.

  • Сначала я сделал полноразмерное окно и отобразил его.

  • Я положил холст на это окно

  • Затем я использовал класс photoimage и свое png-изображение. Затем я поместил это на этикетку.

  • На этом этапе, когда я запускал код, он работал отлично.

  • Я попытался добавить кнопку поверх метки, и теперь происходит то, что этикетка с изображениями сжимается, и изображение вокруг кнопки почти не видно.

Вот мой код:

from tkinter import *
import pyautogui as pag


def act():
    print("Hey")
    ##action here
root = Tk()

winWidth, winHeight = pag.size()

root.state("zoomed")

canvas = Canvas(root, width=winWidth, height=winHeight, bg="white")
canvas.pack()
canvas.pack_propagate(0)

bgClass = PhotoImage(master=root, file="backg.png")

background = Label(canvas, image=bgClass, width=winWidth, height=winHeight)
background.pack()

b = Button(background, text="Click me", command=act)
b.pack()


root.mainloop()

Я пробовал использовать pack_propagate(), чтобы предотвратить сжатие этикетки, но это не сработало.

Кто-нибудь знает, как заставить картинку не сжиматься?

Благодарность

1 ответ

Я думаю это сработает

bgclass=bgclass.resize((700,700), Image.ANTIALIAS)
background = Label(canvas, image=bgClass)
background.pack()

Здесь я изменил размер изображения до 700x700, вы можете изменить его в соответствии с вашими требованиями.

Другие вопросы по тегам