我正在用Python Tkinter创建一个21点游戏,并试图在窗口中的画布上获得一个简单的卡片图像。我尝试了所有方法,但仍然无法使其工作。我认为问题是将文件路径放入我的代码中,但我直接从该图像的属性中复制并粘贴它。
下面是我最近使用的代码:
from PIL import Image, ImageTk
import random
from tkinter import *
root = Tk()
root.title("Blackjack")
canvas = Canvas(root, bg="green", height=1200, width=800)
canvas.create_image(
600, 400, image=r"C:/Users/dskim/OneDrive/Desktop/GUI/Images/Cards/2_of_clubs.png")
card_img = ImageTk.PhotoImage(
file=r"C:/Users/dskim/OneDrive/Desktop/GUI/Images/Cards/2_of_clubs.png")
canvas.pack()
root.mainloop()
这是我一直得到的错误:_tkinter. Tcl错误:无法找到图像文件"C:/USER/D_000.png"。
我试过不同的路径名和不同类型的代码,但仍然没有运气。
2条答案
按热度按时间xlpyo6sf1#
您可以使用
tk.PhotoImage()
加载.gif
的图像,然后将其添加到canvas
中代码应为:
您可以通过here将图像格式从
.png
更改为.gif
。如果没有解决问题,您应该再次检查文件路径中是否有任何拼写错误。
9gm1akwq2#
.create_image()
的image
选项需要PhotoImage
的示例,而不是完整路径,因此在调用.create_image()
之前,需要移动行card_img = ImageTk.PhotoImage(...)
: