python3 tkinter实现添加图片和文本

yipeiwu_com6年前Python基础

本文在前面文章基础上介绍tkinter添加图片和文本,在这之前,我们需要安装一个图片库,叫Pillow,这个需要下载exe文件,根据下面图片下载和安装。

下载完后直接双击安装exe,默认点击下一步,直到安装完成,会自动安装到Python3.6下的\lib\site-packages\PIL

# tkinter实现菜单功能
from tkinter import *
from PIL import Image, ImageTk
 
class Window(Frame):
 
  def __init__(self, master= None):
 
    Frame.__init__(self, master)
    self.master = master
    self.init_window()
 
  def init_window(self):
 
    self.master.title("第一个窗体")
 
    self.pack(fill=BOTH, expand=1)
 
    # 实例化一个Menu对象,这个在主窗体添加一个菜单
    menu = Menu(self.master)
    self.master.config(menu=menu)
 
    # 创建File菜单,下面有Save和Exit两个子菜单
    file = Menu(menu)
    file.add_command(label='Save')
    file.add_command(label='Exit', command=self.client_exit)
    menu.add_cascade(label='File',menu=file)
 
    # 创建Edit菜单,下面有一个Undo菜单
    edit = Menu(menu)
    edit.add_command(label='Undo')
    edit.add_command(label='Show Image',command=self.showImg)
    edit.add_command(label='Show Text',command=self.showTxt)
    menu.add_cascade(label='Edit',menu=edit)
    
 
  def client_exit(self):
    exit()
 
  def showImg(self):
    load = Image.open('pic.jpg') # 我图片放桌面上
    render= ImageTk.PhotoImage(load)
 
    img = Label(self,image=render)
    img.image = render
    img.place(x=0,y=0)
 
  def showTxt(self):
    text = Label(self, text='GUI图形编程')
    text.pack()
 
root = Tk()
root.geometry("400x300")
app = Window(root)
root.mainloop()

运行,点击Edit菜单下的Show Image,会显示一张图片,点击Show Text会出现一行文本。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Win10系统下安装labelme及json文件批量转化方法

Win10系统下安装labelme及json文件批量转化方法

一、安装环境:windows10,anaconda3,python3.6 由于框架maskrcnn需要json数据集,在没安装labelme环境和跑深度学习之前,我安装的是anacond...

Python中的几种矩阵乘法(小结)

一.  np.dot() 1.同线性代数中矩阵乘法的定义。np.dot(A, B)表示: 对二维矩阵,计算真正意义上的矩阵乘积。 对于一维矩阵,计算两者的内积。 2...

Python实现TCP协议下的端口映射功能的脚本程序示例

Python实现TCP协议下的端口映射功能的脚本程序示例

1 端口映射 举个例子来说明一下端口映射的作用。 有A、B、C三台计算机,A、B互通,B、C互通,但是A、C不通,这个时候在C上开了一个Web服务,如何让A访问C的Web服务? 最简单有...

在Python的Flask框架中实现单元测试的教程

 概要 在前面的章节里我们专注于在我们的小应用程序上一步步的添加功能上。到现在为止我们有了一个带有数据库的应用程序,可以注册用户,记录用户登陆退出日志以及查看修改配置文件。 在...

python实现动态数组的示例代码

实现一个支持动态扩容的数组并完成其增删改查 #通过python实现动态数组 """ 数组特点: 占用一段连续的内存空间,支持随机(索引)访问,且时间复杂度为O(1) 添加...