本文在前面文章基础上介绍tkinter添加图片和文本,在这之前,我们需要安装一个图片库,叫Pillow,这个需要下载exe文件,根据下面图片下载和安装。
下载完后直接双击安装exe,默认点击下一步,直到安装完成,会自动安装到Python3.6下的\lib\site-packages\PIL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58 1# tkinter实现菜单功能
2from tkinter import *
3from PIL import Image, ImageTk
4
5class Window(Frame):
6
7 def __init__(self, master= None):
8
9 Frame.__init__(self, master)
10 self.master = master
11 self.init_window()
12
13 def init_window(self):
14
15 self.master.title("第一个窗体")
16
17 self.pack(fill=BOTH, expand=1)
18
19 # 实例化一个Menu对象,这个在主窗体添加一个菜单
20 menu = Menu(self.master)
21 self.master.config(menu=menu)
22
23 # 创建File菜单,下面有Save和Exit两个子菜单
24 file = Menu(menu)
25 file.add_command(label='Save')
26 file.add_command(label='Exit', command=self.client_exit)
27 menu.add_cascade(label='File',menu=file)
28
29 # 创建Edit菜单,下面有一个Undo菜单
30 edit = Menu(menu)
31 edit.add_command(label='Undo')
32 edit.add_command(label='Show Image',command=self.showImg)
33 edit.add_command(label='Show Text',command=self.showTxt)
34 menu.add_cascade(label='Edit',menu=edit)
35
36
37 def client_exit(self):
38 exit()
39
40 def showImg(self):
41 load = Image.open('pic.jpg') # 我图片放桌面上
42 render= ImageTk.PhotoImage(load)
43
44 img = Label(self,image=render)
45 img.image = render
46 img.place(x=0,y=0)
47
48 def showTxt(self):
49 text = Label(self, text='GUI图形编程')
50 text.pack()
51
52root = Tk()
53root.geometry("400x300")
54app = Window(root)
55root.mainloop()
56
57
58
运行,点击Edit菜单下的Show Image,会显示一张图片,点击Show Text会出现一行文本。