Python Tkinter GUI(三)显示图片
来源:互联网 发布:qt5 串口助手编程 编辑:程序博客网 时间:2024/04/30 21:39
怎么才能让界面显得美观呢?布局,色彩,图片这些都可以让界面看着舒服,操作体验好。这章看看如何添加图片,以及比较坑的地方,撸起袖子就是干。
一、Label
Label,文本,可以显示文本,也可以用来显示图片。
1.文本
label_text = Tkinter.Label(root, text = '文本');label_text.pack();
2.图片
在同目录下放三张图片,分别是img_png.png,img_jpg.jpg,img_gif.gif
img_png = Tkinter.PhotoImage(file = 'img_png.png')label_img = Tkinter.Label(root, image = img_png)label_img.pack()
恭喜你,获得了一个bug
报错:couldn't recognize data in image file "img_png.png”,意思是不能识别”img_png.png”这图片,原因是不能用png,jpg格式的图片,但是可以支持gif格式。强行把png后缀改为gif,这是不行的,你必须使用工具转出gif格式。
正确代码:
img_gif = Tkinter.PhotoImage(file = 'img_gif.gif')label_img = Tkinter.Label(root, image = img_gif)label_img.pack()
运行:
二、button
1.不设置图片的button
button = Tkinter.Button(root, text = '不带图按钮')button.pack()
2.设置图片的button
添加两张按钮图片放在同目录下,分别是button_png.png,button_gif.gif
button显示图片有2种方式,分别是image,bitmap
image:跟上面是一样的,得使用gif格式。
bitmap:格式是xbm,当然系统也提供了一部分xbm文件,比如:Tkinter.BitmapImage(file = 'xx.xbm')
#带图button,imagebutton_img_gif = Tkinter.PhotoImage(file = 'button_gif.gif')button_img = Tkinter.Button(root, image = button_img_gif, text = '带图按钮')button_img.pack()#带图button,bitmapbutton_bitmap = Tkinter.Button(root, bitmap = 'error', text = '带图按钮')button_bitmap.pack()
运行之后你会发现按钮上的文本不见了,一脸懵逼。
整体代码如下:
#!/usr/bin/python# -*- coding: UTF-8 -*-import Tkinterroot = Tkinter.Tk()root.title('应用程序窗口') #窗口标题root.resizable(False, False) #固定窗口大小windowWidth = 800 #获得当前窗口宽windowHeight = 500 #获得当前窗口高screenWidth,screenHeight = root.maxsize() #获得屏幕宽和高geometryParam = '%dx%d+%d+%d'%(windowWidth, windowHeight, (screenWidth-windowWidth)/2, (screenHeight - windowHeight)/2)root.geometry(geometryParam) #设置窗口大小及偏移坐标root.wm_attributes('-topmost',1)#窗口置顶#label文本label_text = Tkinter.Label(root, text = '文本');label_text.pack();#label图片img_gif = Tkinter.PhotoImage(file = 'img_gif.gif')label_img = Tkinter.Label(root, image = img_gif)label_img.pack()#不带图buttonbutton = Tkinter.Button(root, text = '不带图按钮')button.pack()#带图button,imagebutton_img_gif = Tkinter.PhotoImage(file = 'button_gif.gif')button_img = Tkinter.Button(root, image = button_img_gif, text = '带图按钮')button_img.pack()#带图button,bitmapbutton_bitmap = Tkinter.Button(root, bitmap = 'error', text = '带图按钮')button_bitmap.pack()root.mainloop()
运行效果
三、Pillow第三方库添加png,jpg格式图片
想要使用格式png,jpg来添加图片,使用第三方库(这时真想吐槽,你TM添加个图片还要使用第三方库),这秘籍的名字叫做Pillow。Pillow主要是用来处理图片,你仔细去研究它,你会发现它功能很强大。
1.安装Pillow
- pyCharm --> preferences
- Project:python --> Project Interpreter
- 选择Project Interpreter,然后左下角有个+号,点击添加第三方库
- 搜索Pillow并下载安装
- 安装成功了会显示在列表中,并运用Pillow
2.代码
- 导入PIL模块
from PIL import Image, ImageTk
- 添加图片
img_open = Image.open('img_png.png')img_png = ImageTk.PhotoImage(img_open)label_img = Tkinter.Label(root, image = img_png)label_img.pack()
这章到这就结束了,功能都是很小,这里并没有对Label,Button细讲。有兴趣的可以去官网看看Label,Button控件的介绍及功能。
- Python Tkinter GUI(三)显示图片
- Python GUI (Tkinter)
- Python Tkinter制作GUI
- python GUI Tkinter 模块
- Python GUI编程(Tkinter)
- Python GUI编程(Tkinter)
- Python GUI编程(Tkinter)
- Python GUI编程(Tkinter)
- Python GUI编程(Tkinter)
- Python Gui 学习 Tkinter
- python GUI编程(Tkinter)
- Python Gui 学习 Tkinter
- Python GUI Programming (Tkinter)
- python GUI编程(Tkinter)
- python GUI编程(Tkinter)
- Python GUI - Tkinter LabelFrame
- python GUI编程(Tkinter)
- python GUI编程(Tkinter)
- 面向对象--抽象类
- 关于A/D精度、分辨率、LSB详解
- 数据分析的统计学基础--描述性统计
- js 对象 key 变量
- 【线性代数】私人回顾
- Python Tkinter GUI(三)显示图片
- hackerrank Collections.namedtuple()
- Java 对象序列化和transient 作用
- Android ANR
- OSI七层模型(转)
- 输入一个大写字母,显示三角形
- 二叉树经典问题——已知中序和前序重建二叉树
- 记一次http请求报400 badRequest
- rsyslog 入门 第五篇 out put elasticsearch