如何在Tkinter中将.bmp文件加载到BitmapImage类中

1 投票
1 回答
10534 浏览
提问于 2025-04-16 05:21

我找不到任何方法把 .bmp 文件加载到 Tkinter() 中,这样我才能在画布小部件上使用它!请帮帮我!

from Tkinter import *
from PIL import Image
import ImageTk
import tkFileDialog
import tkMessageBox
root=Tk()
class lapp:
   def __init__(self,master):
      w=Canvas(root,width=300,height=300)
      w.pack()
      p=Image.open("001.bmp")
      tkimage=ImageTk.PhotoImage(p)
      w.creat_image(0,0,image=tkimage)
App=lapp(root)
root.mainloop()

画布上什么图像都没有显示,就是空白!顺便说一下,我用的是 Windows 7 和 Python 2.7。

1 个回答

1

这个对我来说有效。

当我使用Tk的PhotoImage类时,图片不显示。但是用PIL的时候就没问题。

我的图片大小是50*250,所以我设置了中心坐标(25, 125)。

from Tkinter import *
from PIL import Image, ImageTk

root=Tk()

root.title("My Image")

w = Canvas(root, width=50, height=250)
image = Image.open("blog0.bmp")
w.create_image((25, 125), image=ImageTk.PhotoImage(image))

w.pack()

root.mainloop()

希望这能帮到你。

撰写回答