python - Jupyter 中的 Tkinter PhotoImage
问题描述
我正在使用 jupyter 笔记本。我在用 tkinter 库中的按钮合成照片时遇到问题。我使用了 PhotoImage 功能,我写了我想上传的照片的具体地址,并与按钮复合,但每次我收到错误
"TclError: couldn't recognize data in image file "C:/Users/bcz/Desktop/ax.png/""
我试过用 \ 和 / 写地址,我试过不同的照片,但错误是一样的。
master=Tk()
master.title('test')
lb=Button(master,text='click')
lb.pack()
lb.config(foreground='pink')
ax=PhotoImage(file='C:/Users/bcz/Desktop/ax.png/',master=master)
lb.config(image=ax,compound='down')
master.mainloop()
解决方案
我刚刚检查了我机器上的代码并做了一些小的改动。
from tkinter import *
master=Tk()
master.title('test')
lb=Button(master,text='click')
lb.pack()
lb.config(foreground='pink')
ax=PhotoImage(file='C:/Users/TFischer/Desktop/bird.png',master=master)
lb.config(image=ax,compound='center')
master.mainloop()
首先:我在“*.png”之后删除了las“/”。这是因为“/”表示要在较低级别打开另一个文件夹。
第二:我更改compound='down'
为compound='center'
This was recomanded by my debugger 因为“down”是不允许的。
推荐阅读
- android - Android ViewModel 中的 Kotlin 支持属性
- javascript - Quill.js 和视频处理程序的自定义提示
- c++ - 使用字符串数组从书籍列表中查找书籍
- amazon-web-services - 是否可以在 AWSCLI 的单个脚本中创建 EC2、S3 存储桶并分配入站规则?
- java - 使用 Java Streams 获取嵌套列表的每个第 n 个元素
- telegraf - 仅按时间而不是标签聚合 Telegraf 中的数据
- firebase - 使用 Cloud Storage 上传文件执行时间过长
- java - Android Studio:需要帮助动画进度条
- javascript - 使用角度 e2e 测试时与 gojs 画布交互
- matlab - 为 MATLAB 使用 (libccd) 共享库