【问题标题】:Photoimage cannot load image on imported classPhotoimage 无法在导入的类上加载图像
【发布时间】:2021-07-30 09:25:23
【问题描述】:

我正在用 Tkinter 制作一个程序,我决定使用图像按钮以便于交互,但 PhotoImage 不知何故不起作用。 该脚本的代码示例包含图片按钮:

from tkinter import *

class test:
    def __init__(self,master):
        self.master = master
        img = PhotoImage(r'E:\v1.1\import.png')
        b1 = Button(self.master, image = img).pack()

包含将加载上述脚本的源代码的脚本:

from test2 import *
maingui = Tk() 
gui = test(maingui) 
maingui.mainloop()

不知何故,图像没有加载,留下非常小的按钮。有谁知道我做错了什么?

编辑 1:我尝试了 this solution(acw1668 提到)并编辑了第一个脚本的代码,但它不起作用

from tkinter import *

class test:
    def __init__(self,master):
        global img
        self.master = master
        img = PhotoImage('E:\\v1.1\\import.png')
        imglabel = Label(image=img)
        imglabel.image = img
        imglabel.pack()

        b1 = Button(self.master, image = img).pack()

结果与您在链接上看到的相同 [1]:https://i.stack.imgur.com/Mo1XH.png

编辑 2:我尝试添加 self.进入 img 和 imglabel 但它也不起作用。

from tkinter import *

class test:
    def __init__(self,master):
    # I cannot global self.img so I have to delete it
        self.master = master
        self.img = PhotoImage('E:\\v1.1\\import.png')
        self.imglabel = Label(image=img)
        self.imglabel.image = self.img
        self.imglabel.pack()

        self.b1 = Button(self.master, image = self.img).pack()

【问题讨论】:

  • @acw1668 没用,我已经在那个帖子上尝试了所有方法,但都没有成功。
  • 请展示您从其他答案中尝试过的内容,否则我们将不得不将其作为重复项关闭。
  • @BryanOakley 我将在我在家时立即发布我从提到的帖子中重新创建的新代码
  • @BryanOakley 我在 EDIT1 上添加了新代码

标签: python tkinter


【解决方案1】:

PhotoImage 更改为

PhotoImage('E:\\v1.1\\import.png')

PhotoImage( file = 'E:\\v1.1\\import.png')

【讨论】:

  • 你肯定让他们去@Rotmegax!编码愉快。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-02
相关资源
最近更新 更多