python tkinter chk

视频过程中的练习, 可以在python2.7下运行.

001: hello,world:

 

1
2
3
4
5
6
from Tkinter import Label, Tk
 
root = Tk()
thelabel = Label(root, text="This is too easy")
thelabel.pack()
root.mainloop()
 

002: Button pack布局

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
from Tkinter import *
 
root = Tk()
 
topFrame = Frame(root)
topFrame.pack()
bottomFrame = Frame(root)
bottomFrame.pack(side=BOTTOM)
 
button1 = Button(topFrame, text="Button 1", fg="red")
button2 = Button(topFrame, text="Button 2", fg="blue")
button3 = Button(topFrame, text="Button 3", fg="green")
button4 = Button(bottomFrame, text="Button 4", fg="purple")
 
button1.pack(side=LEFT)
button2.pack(side=LEFT)
button3.pack(side=LEFT)
button4.pack(side=BOTTOM)
 
root.mainloop()
 

003: Label和pack布局

1
2
3
4
5
6
7
8
9
10
11
12
13
from Tkinter import *
 
root = Tk()
 
one = Label(root, text="one", bg="red", fg="white")
two = Label(root, text="two", bg="green", fg="black")
three = Label(root, text="three", bg="blue", fg="white")
 
one.pack()
two.pack(fill=X)
three.pack(side=LEFT, fill=Y)
 
root.mainloop()
 

004: grid布局.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from Tkinter import *
 
root = Tk()
 
label_1 = Label(root, text="Name")
label_2 = Label(root, text="Password")
entry_1 = Entry(root)
entry_2 = Entry(root)
 
label_1.grid(row=0)
label_2.grid(row=1)
entry_1.grid(row=0, column=1)
entry_2.grid(row=1, column=1)
 
root.mainloop()
 

005: grid布局

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
from Tkinter import *
 
root = Tk()
 
label_1 = Label(root, text="Name")
label_2 = Label(root, text="Password")
entry_1 = Entry(root)
entry_2 = Entry(root)
 
label_1.grid(row=0, sticky=E)
label_2.grid(row=1, sticky=E)
entry_1.grid(row=0, column=1)
entry_2.grid(row=1, column=1)
 
c = Checkbutton(root, text="Keep me logged in")
c.grid(columnspan=2)
 
root.mainloop()
 

006: Button和事件

1
2
3
4
5
6
7
8
9
10
11
from Tkinter import *
 
root = Tk()
 
def printName():
    print("Chello my name is Bucky!")
 
button_1 = Button(root, text="Print my name", command=printName)
button_1.pack()
 
root.mainloop()
 

007:  绑定事件: 左键,中键,右键

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#coding:utf8
from Tkinter import *
 
root = Tk()
 
def printName(event):
    print("Chello my name is Bucky!")
 
button_1 = Button(root, text="Print my name")
'''
<Button-1> 鼠标左键
<Button-2> 鼠标中键
<Button-3> 鼠标右键
'''
button_1.bind("<Button-1>", printName)
button_1.pack()
 
root.mainloop()
 

008:   绑定事件: 左键,中键,右键

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
from Tkinter import *
 
root = Tk()
 
def leftClick(event):
    print "left"
     
def middleClick(event):
    print "middle"
     
def rightClick(event):
    print "right"
 
frame = Frame(root, width=300, height=250)
frame.bind("<Button-1>", leftClick)
frame.bind("<Button-2>", middleClick)
frame.bind("<Button-3>", rightClick)
frame.pack()
 
root.mainloop()
 

009:  Python GUI with Tkinter-8-Using Classes

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# -*- coding:utf-8 -*-
'''
Python GUI with Tkinter-8-Using Classes
'''
from Tkinter import *
 
class BuckysButtons:
    def __init__(self, master):
        frame = Frame(master)
        frame.pack()
         
        self.printButton = Button(frame, text="Print Message", command=self.printMessage)
        self.printButton.pack(side=LEFT)
         
        self.quitButton = Button(frame, text="Quit", command=frame.quit)
        self.quitButton.pack(side=LEFT)
         
    def printMessage(self):
        print "Wow, this actually worked!"
 
root = Tk()
b = BuckysButtons(root)
root.mainloop()
 

010: Python GUI with Tkinter-9-Creating Drop Down Menus

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
# -*- coding:utf-8 -*-
'''
Python GUI with Tkinter-9-Creating Drop Down Menus
'''
from Tkinter import *
 
def doNothing():
    print("ok ok I won't...")
 
root = Tk()
 
menu = Menu(root)
root.config(menu=menu)
 
subMenu = Menu(menu)
menu.add_cascade(label="File", menu=subMenu)
subMenu.add_command(label="New Project...", command=doNothing)
subMenu.add_command(label="New...", command=doNothing)
subMenu.add_separator()
subMenu.add_command(label="Exit", command=doNothing)
 
editMenu = Menu(menu)
menu.add_cascade(label="Edit", menu=editMenu)
editMenu.add_command(label="Redo", command=doNothing)
 
root.mainloop()
 

011: Python GUI with Tkinter-10-Creating a Toolbar

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
# -*- coding:utf-8 -*-
'''
Python GUI with Tkinter-10-Creating a Toolbar
'''
from Tkinter import *
 
def doNothing():
    print("ok ok I won't...")
 
root = Tk()
 
# ***** Main Menu *****
menu = Menu(root)
root.config(menu=menu)
 
subMenu = Menu(menu)
menu.add_cascade(label="File", menu=subMenu)
subMenu.add_command(label="New Project...", command=doNothing)
subMenu.add_command(label="New...", command=doNothing)
subMenu.add_separator()
subMenu.add_command(label="Exit", command=doNothing)
 
editMenu = Menu(menu)
menu.add_cascade(label="Edit", menu=editMenu)
editMenu.add_command(label="Redo", command=doNothing)
 
# ***** Toolbar *****
 
toolbar = Frame(root, bg="blue")
 
insertBtn = Button(toolbar, text="Insert Image", command=doNothing)
insertBtn.pack(side=LEFT, padx=2, pady=2)
printBtn = Button(toolbar, text="Print", command=doNothing)
printBtn.pack(side=LEFT, padx=2, pady=2)
 
toolbar.pack(side=TOP, fill=X)
 
root.mainloop()
 

012: Python GUI with Tkinter-11-Adding the Status Bar

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
# -*- coding:utf-8 -*-
'''
Python GUI with Tkinter-11-Adding the Status Bar
'''
from Tkinter import *
 
def doNothing():
    print("ok ok I won't...")
 
root = Tk()
 
# ***** Main Menu *****
menu = Menu(root)
root.config(menu=menu)
 
subMenu = Menu(menu)
menu.add_cascade(label="File", menu=subMenu)
subMenu.add_command(label="New Project...", command=doNothing)
subMenu.add_command(label="New...", command=doNothing)
subMenu.add_separator()
subMenu.add_command(label="Exit", command=doNothing)
 
editMenu = Menu(menu)
menu.add_cascade(label="Edit", menu=editMenu)
editMenu.add_command(label="Redo", command=doNothing)
 
# ***** Toolbar *****
 
toolbar = Frame(root, bg="blue")
 
insertBtn = Button(toolbar, text="Insert Image", command=doNothing)
insertBtn.pack(side=LEFT, padx=2, pady=2)
printBtn = Button(toolbar, text="Print", command=doNothing)
printBtn.pack(side=LEFT, padx=2, pady=2)
 
toolbar.pack(side=TOP, fill=X)
 
# ***** Status Bar *****
 
status = Label(root, text="Preparing to do nothing...", bd=1, relief=SUNKEN, anchor=W)
status.pack(side=BOTTOM, fill=X)
 
root.mainloop()
 

013: Python GUI with Tkinter-12-Messagebox

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# -*- coding:utf-8 -*-
'''
Python GUI with Tkinter-12-Messagebox
How to create a message box with tkinter?
http://stackoverflow.com/questions/1052420/how-to-create-a-message-box-with-tkinter
'''
from Tkinter import *
import tkMessageBox
 
root = Tk()
tkMessageBox.showinfo("Window Title", "Monkeys can live up to 300 years.")
msg = tkMessageBox
 
answer = msg.askquestion("Question1", "Do you like silly faces?")
 
if answer == 'yes':
    print(' 8===D~')
     
 
root.mainloop()
 

014: Python GUI with Tkinter-13-Shapes and Graphics

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# -*- coding:utf-8 -*-
'''
Python GUI with Tkinter-13-Shapes and Graphics
'''
from Tkinter import *
 
root = Tk()
 
canvas = Canvas(root, width=200, height=100)
canvas.pack()
 
blackLine = canvas.create_line(0, 0, 200, 50)
redLine = canvas.create_line(0, 100, 200, 50, fill="red")
greenBox = canvas.create_rectangle(25, 25, 130, 60, fill="green")
 
# canvas.delete(redLine)
canvas.delete(ALL)
 
 
root.mainloop()
 

015: Python GUI with Tkinter-14-Images and Icons

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
# -*- coding:utf-8 -*-
'''
Python GUI with Tkinter-14-Images and Icons
(1.1)在这个例子中遇到问题"_tkinter.TclError: couldn't recognize data in image file"
(1.2)http://stackoverflow.com/questions/27599311/tkinter-photoimage-doesnt-not-support-png-image
(1.3)http://effbot.org/tkinterbook/photoimage.htm
(1.4)解决办法参考上面的链接. 引入 "from PIL import Image, ImageTk"
---------------
(2)中文目录要加  u"..."
'''
from Tkinter import *
from PIL import Image, ImageTk
 
 
root = Tk()
 
imgList = ["image001.png", "kaola.jpg", u"考拉.jpg"]
print(imgList[-1])
image = Image.open(imgList[-1])
# photo = PhotoImage(file="image001.png")
photo = ImageTk.PhotoImage(image)
 
label = Label(root, image=photo)
label.pack()
 
root.mainloop()
原文地址:https://www.cnblogs.com/ruiy/p/9147902.html