带图像的简单图形用户界面

2024-09-28 21:37:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在我的简单图形用户界面上显示一些卡片,但是没有显示出来。在

我上传了一个工作文件,里面有我想上传的.gif文件,代码很接近,但不正确。 http://www.filedropper.com/cardgameproblem大小:0Kb,类型:.zip在

  • 包含1.py和1.gif

要查看的行从257-266开始。我知道这只是个小错误,但我看不出来。在

请帮忙


Tags: 文件代码pycomhttp类型www错误
1条回答
网友
1楼 · 发布于 2024-09-28 21:37:05

经过一番修补,我发现当图像存储在GUI的一个变量中时,即使用self时,图像是正确显示的

self.gif1 = PhotoImage(file='1.gif')
self.canvas.create_image(0, 0, image=self.gif1, anchor=NW)

我不知道为什么,但是这样做是可行的,而只命名gif1(或任何其他名称),而不使用self,则不行。在您的代码和最小的示例中都进行了测试。在

更新:正如@Bryan指出的,垃圾回收器在__init__完成时处理PhotoImage实例。必须在构造函数的作用域之外保留对实例的引用,例如使用self,或global。考虑到当前的问题,最好创建一个dict,用卡片的名称作为键存储图像。在

相关问题 更多 >