首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么当我使用.gif调用它们时,我的PhotoImage文件就不会出现呢?

为什么当我使用.gif调用它们时,我的PhotoImage文件就不会出现呢?
EN

Stack Overflow用户
提问于 2015-08-26 06:19:03
回答 1查看 77关注 0票数 0
代码语言:javascript
复制
from tkinter import *
from random import *
from functools import partial


class Game:
    def __init__(self):
        self.root = Tk()

        self.frame = Frame(width = 574, height = 574)
        self.frame.grid(columnspan = 30, rowspan = 30)

        self.minex = []
        self.miney = []

        self.clickx = 0
        self.clicky = 0

        blank = PhotoImage(file = 'C:\\Users\\PC\\Desktop\\Python Programs\\Minesweeper\\blank.gif')

        for i in range(0,30):
            for j in range(0,30):
                button = Button(width = 15, height = 15, padx = 2, pady = 2, image = blank, command = partial(self.click, j, i))
                button.grid(row = i, column = j)

        self.mine_place()

        self.root.mainloop()

    def mine_place(self):
        for i in range(0,15):
            self.minex.append(randint(1,30))
            self.miney.append(randint(1,30))

    def click(self, j, i):
        miss = PhotoImage(file = 'C:\\Users\\PC\\Desktop\\Python Programs\\Minesweeper\\miss.gif')
        hit = PhotoImage(file = 'C:\\Users\\PC\\Desktop\\Python Programs\\Minesweeper\\hit.gif')
        for k in range(0, len(self.minex)):
            if j + 1 == self.minex[k] and i + 1 == self.miney[k]:
                button = Button(image = hit)
                button.grid(row = i, column = j)
            else:
                button = Button(image = miss)
                button.grid(row = i, column = j)


app = Game()

在self.click中,当我希望用这个图像创建一个按钮时,我会得到一个空白的图像。如果我在init中创建一个按钮,图像就会显示得很好。什么是wrong?..............................................................?

EN

回答 1

Stack Overflow用户

发布于 2015-08-26 06:25:51

看起来您的图像正在被垃圾收集,您需要在使用PhotoImage后保存对图像的引用。

创建图像blank,因此将引用保存为self.blank=空白,并使用image = self.hit

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32219268

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档