我正在努力让 ImageTK.PhotoImage 正确显示。我总是得到一个全屏浅灰色屏幕而不是图像。
我已经尝试了大约 20 次不同的迭代与类中的函数等,但这里是当前的 -- 现在已经被充分破坏 -- 代码:
baseball.py
#!/usr/bin/python3
from game import Game
from menu import Menu
from display import ShowSplash
import tkinter as tk
from tkinter import ttk, Canvas
from PIL import Image, ImageTk
root = tk.Tk()
root.title('Baseball')
root.wm_attributes('-type', 'splash')
root.geometry(str(root.winfo_screenwidth()) + 'x' + str(root.winfo_screenheight()) + '+0+0')
root['background'] = '#000000'
canvas = Canvas(root, width = root.winfo_screenwidth(), height = root.winfo_screenheight())
canvas.pack()
ShowSplash(canvas)
root.mainloop()
和display.py
import os
import time
import tkinter as tk
from tkinter import ttk
from PIL import Image, ImageTk
class ShowSplash:
def __init__(self, canvas):
self.canvas = canvas
self.image = Image.open(os.path.join(os.getcwd(), 'images/splash-screen.jpg'))
self.splashScreenImage = ImageTk.PhotoImage(self.image)
self.canvas.create_image(0, 0, anchor='center', image=self.splashScreenImage)
time.sleep(5)
有关如何使其正常工作的任何想法?