<p>代码背后的思想是完美的。<br/></p>
<ol>
<li>这里的问题是代码无法将映像分配给变量<code>bgimg</code>,这是因为在<em>第15行</em>中,您将<code>bgimg</code>定义为字符串而不是变量</li>
</ol>
<p>而不是</p>
<pre><code>importimg('bgimg','main1.jpg')
</code></pre>
<p>试一试</p>
<pre><code>bgmain = 0
importimg(bgimg,'')
</code></pre>
<ol start=“2”>
<li>程序可能找不到映像的目录。我建议您使用<code>.open()</code>方法来定义图像位置。使用此选项,还可以指定图像的<code>Width</code>和<code>Height</code></li>
</ol>
<p><em><code>.open()</code>方法</em></p>
<pre><code>path = ".\imagename.jpg" or ".\images\imgname.jpg" or "F:\New folder\imgname.jpg"
k = Image.open(path)
k = k.resize((300,300), Image.ANTIALIAS)
bgimg = ImageTk.PhotoImage(k)
LABEL = Label(bg="black", image=bgimg)
LABEL.place(height=300, width=300)
</code></pre>
<p>如果您仍然无法找出问题所在,请参考以下内容</p>
<pre><code>from tkinter import *
from PIL import ImageTk, Image
root = Tk()
root.title("Guess Geek")
root.geometry("1280x720")
root.resizable(0, 0)
def importimg(x,y):
path = y
k = Image.open(path)
k = k.resize((400,400),Image.ANTIALIAS)
x=ImageTk.PhotoImage(k)
global bgimg
bgimg = x
bgimg = 0
importimg(bgimg,".\foldername\imagename.jpg")
bg = Label(root, image=bgimg )
bg.place(width=400, height=400, relx=0.05, rely=0.1)
root.mainloop()
</code></pre>