try: # In order to be able to import tkinter for
import tkinter as tk # either in python 2 or in python 3
except ImportError:
import Tkinter as tk
def download_images():
# In order to fetch the image online
try:
import urllib.request as url
except ImportError:
import urllib as url
url.urlretrieve("https://i.stack.imgur.com/IgD2r.png", "lenna.png")
url.urlretrieve("https://i.stack.imgur.com/sML82.gif", "lenna.gif")
if __name__ == '__main__':
download_images()
root = tk.Tk()
widget = tk.Label(root, compound='top')
widget.lenna_image_png = tk.PhotoImage(file="lenna.png")
widget.lenna_image_gif = tk.PhotoImage(file="lenna.gif")
try:
widget['text'] = "Lenna.png"
widget['image'] = widget.lenna_image_png
except:
widget['text'] = "Lenna.gif"
widget['image'] = widget.lenna_image_gif
widget.pack()
root.mainloop()
9条答案
按热度按时间ni65a41a1#
Win32上的Python 3.3.1 [MSC v.1600 32位(英特尔)] 2013年5月14日
通过遵循上面的代码,这对我很有效
gj3fmq9x2#
上面的代码中没有“语法错误”-它可能发生在其他行(上面的代码不是全部,因为没有导入,也没有
path
变量的声明),或者您得到了其他错误类型。在交互式解释器上测试时,上面的示例对我来说运行良好。
8fsztsew3#
下面是一个Python 3的例子,你可以在Python 2中编辑它;)
oymdgrw74#
以下代码在我的计算机上有效
1.您的代码中可能缺少一些内容。
1.请同时检查代码文件的编码。
1.确保已安装PIL软件包
qnzebej05#
实际代码可能会根据
path
指向的文件格式返回一个错误。也就是说,PhotoImage
类已经支持一些图像格式,如.gif、.pgm(如果tk.TkVersion〉= 8.6,则为.png)。下面是一个显示的示例:
或者如果
tk.TkVersion < 8.6
:dnph8jn46#
它不是python 2.7的标准库,所以为了让这些库正常工作,如果你使用的是Python 2.7,你应该先下载PIL库:
https://pillow.readthedocs.io/en/latest/installation.html
安装后,请执行以下步骤:
1.确保您的script.py与您要显示的图像位于同一文件夹中。
1.编辑脚本.py**
希望能有所帮助!
cld4siwp7#
这段代码对我很有效,你也应该考虑如果你在那个窗口中有任何其他按钮或标签,而你不使用
.place()
,它将无法正常工作。jvidinwx8#
这是一个Python版本问题。如果你使用的是最新版本,那么你的旧语法将不起作用,并给予你这个错误。请按照@Josav09的代码,你会没事的。
sycxhyv79#
只需将jpg格式的图像转换为png格式。它将工作100%。