gpt4 book ai didi

python - 为什么我的图像按钮没有出现?

转载 作者:太空宇宙 更新时间:2023-11-04 01:18:14 24 4
gpt4 key购买 nike

我试图在我的图像背景上的特定位置放置两个图像按钮,但我的按钮没有出现。我认为他们的图像在背景之后。

我尝试使用placepack,都没有用。可能是什么问题?

from tkinter import*
import tkinter as tk
import settings

class Application(Frame):
def __init__ (self, master):
Frame.__init__(self,master)
self.grid()
self.create_widgets()

def create_widgets(self):
button1 = PhotoImage(file ="button1.gif")
button2 = PhotoImage(file ="button2.gif")
settings_button = Button(self, image = button1,
command = self.mult_command, width = 15)
settings_button.place(x=1, y=1)
rules_button = Button(self, image = button2,
command = self.the_rules, width = 15)
rules_button.place(x=50, y=50)

def main_code():
window = Tk()
window.title("The Bouncer")
bg_image = PhotoImage(file ="pic.gif")
x = Label (image = bg_image)
x.image = bg_image
x.place(x = 0, y = 0, relwidth=1, relheight=1)
window.geometry("600x300")
app = Application(window)
window.mainloop()

main_code()

谢谢

最佳答案

很可能您的图像在显示之前正在被垃圾收集。这是一个常见的 Tkinter 陷阱。尝试更改行:

button1 = PhotoImage(file ="button1.gif")
button2 = PhotoImage(file ="button2.gif")

self.button1 = PhotoImage(file ="button1.gif")
self.button2 = PhotoImage(file ="button2.gif")

和使用

settings_button = Button(self, image = self.button1, command = self.mult_command, width = 15)

等等

这应该保留对您图像的引用,阻止它被垃圾收集。

关于python - 为什么我的图像按钮没有出现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23000451/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com