Professional Documents
Culture Documents
Tkinter là thư viện GUI tiêu chuẩn cho Python. Tkinter trong Python cung cấp một cách nhanh chóng
và dễ dàng để tạo các ứng dụng GUI. Tkinter cung cấp giao diện hướng đối tượng cho bộ công cụ Tk
GUI.
Ví dụ:
No Button Mô tả
1 Button Button được sử dụng để thêm nhiều nút khác nhau vào ứng dụng python.
3 Checkbutton Checkbutton được sử dụng để hiển thị CheckButton trên cửa sổ.
4 Entry Entry được sử dụng để hiển thị trường văn bản một dòng cho người dùng. Nó
thường được sử dụng để nhập các giá trị của người dùng.
5 Frame Frame có thể được định nghĩa là một vùng chứa mà có thể chứa một hoặc nhiều
widget khác.
6 Label Label là một văn bản được sử dụng để hiển thị một số thông báo hoặc thông tin
cho các widget khác.
7 ListBox ListBox được sử dụng để hiển thị danh sách các tùy chọn cho người dùng.
8 Menubutton Menubutton được sử dụng để hiển thị các mục menu cho người dùng.
9 Menu Menu được sử dụng để thêm các mục menu cho người dùng.
10 Message Message được sử dụng để hiển thị hộp tin nhắn cho người dùng.
11 Radiobutton Người dùng được cung cấp các tùy chọn khác nhau và người dùng chỉ có thể
chọn một tùy chọn trong số đó.
12 Scale Nó được sử dụng để cung cấp thanh trượt cho người dùng.
13 Scrollbar Nó cung cấp thanh cuộn cho người dùng để người dùng có thể cuộn cửa sổ lên
và xuống.
14 Text Nó khác với Entry vì nó cung cấp một trường văn bản nhiều dòng cho người dùng
để người dùng có thể viết văn bản và chỉnh sửa văn bản bên trong nó.
15 Toplevel Nó được sử dụng để tạo một vùng chứa cửa sổ riêng biệt.
16 Spinbox Nó là một widget mục nhập được sử dụng để chọn từ các tùy chọn của các giá trị.
17 PanedWindow Nó giống như một widget container chứa các ô ngang hoặc dọc.
18 LabelFrame LabelFrame là một widget vùng chứa hoạt động như một container.
18 MessageBox Nó được sử dụng để hiển thị hộp thông báo trong các ứng dụng desktop.
Phương thức pack() được sử dụng để tổ chức widget theo khối. Vị trí các widget được thêm vào ứng
dụng python bằng phương thức pack() có thể được kiểm soát bằng cách sử dụng các tùy chọn khác
nhau được chỉ định trong lệnh gọi phương thức.
Cú pháp:
1 widget.pack(options)
Các tùy chọn (options):
expand : Nếu expand là true thì tiện ích con sẽ mở rộng để lấp đầy khoảng trống.
Fill : Xác định xem widget con có lấp đầy bất kỳ không gian thừa nào do trình đóng gói phân bổ cho
nó hay không hoặc giữ các kích thước tối thiểu của riêng nó: NONE(mặc định), X (chỉ điền theo
chiều ngang), Y (chỉ điền theo chiều dọc) hay BOTH (điền theo cả chiều ngang và chiều dọc ).
side : Nó giúp xác định vị trí của widget so với widget cha.
Ví dụ:
Kết quả:
Trình quản lý layout grid() sắp xếp các widget ở dạng bảng. Chúng ta có thể chỉ định các hàng và cột.
Chúng ta cũng có thể chỉ định khoảng cột (chiều rộng) hoặc chiều dài hàng (chiều cao) của widget
con.
Đây là một cách có tổ chức hơn để đặt các widget vào ứng dụng python. Cú pháp để sử dụng
phương thức grid() được đưa ra dưới đây.
1 widget.grid(options)
Dưới đây là danh sách tùy chọn của phương thức grid():
Column: Số cột mà widget con sẽ được đặt. Cột ngoài cùng bên trái được biểu thị bằng 0.
Columnspan: Chiều rộng của widget con. Nó đại diện cho số cột mà đến đó, cột được mở rộng.
ipadx, ipady: Nó đại diện cho số lượng pixel cho đường viền của gidget.
padx, pady: Nó đại diện cho số lượng pixel bên ngoài đường viền của gidget.
row: Số hàng mà widget con sẽ được đặt. Hàng trên cùng được biểu thị bằng 0.
rowspan: Chiều cao của widget con, tức là số hàng mà tiện ích con được mở rộng.
Sticky: Nếu ô lớn hơn một widget, thì Sticky được sử dụng để chỉ định vị trí của widget bên trong ô.
Nó có thể là sự ghép nối của các chữ cái sticky đại diện cho vị trí của widget. Nó có thể là N, E, W,
S, NE, NW, NS, EW, ES.
Ví du:
1
from tkinter import *
2 parent = Tk()
3 name = Label(parent, text = "Name").grid(row = 0, column = 0)
4 e1 = Entry(parent).grid(row = 0, column = 1)
5 password = Label(parent, text = "Password").grid(row = 1, column = 0)
e2 = Entry(parent).grid(row = 1, column = 1)
6 submit = Button(parent, text = "Submit").grid(row = 4, column = 0)
7 parent.mainloop()
8
Kết quả:
Trình quản lý layout place() sắp xếp các widget theo các tọa độ x và y.
Cú pháp:
1 widget.place(options)
Dưới đây là danh sách các tùy chọn:
Anchor: Nó thể hiện vị trí chính xác của widget con trong container. Giá trị mặc định là NW (góc
trên bên trái).
bordermode: Giá trị mặc định của kiểu đường viền là INSIDE đề cập đến việc bỏ qua giá trị gốc
bên trong đường viền. Tùy chọn còn lại là OUTSIDE.
height, width: Nó đề cập đến chiều cao và chiều rộng của widget tính bằng pixel.
relheight, relwidth: Chiều cao và chiều rộng có giá trị trong khoảng 0,0 và 1,0.
relx, rely: Có giá trị trong khoảng 0,0 và 1,0, là độ lệch theo hướng ngang và dọc.
x, y: Nó đề cập đến độ lệch ngang và dọc theo pixel.
Ví dụ:
?
1
2 from tkinter import *
3
top = Tk()
4 top.geometry("400x250")
5 name = Label(top, text = "Name").place(x = 30, y = 50)
6 email = Label(top, text = "Email").place(x = 30, y = 90)
7 password = Label(top, text = "Password").place(x = 30, y = 130)
e1 = Entry(top).place(x = 80, y = 50)
8 e2 = Entry(top).place(x = 80, y = 90)
9 e3 = Entry(top).place(x = 95, y = 130)
10 top.mainloop()
11
Kết quả:
Tkinter Button được sử dụng để thêm các button trong ứng dụng Python. Các button này có thể hiển
thị văn bản hoặc hình ảnh để thể hiện mục đích của chúng. Bạn có thể gán một hàm hoặc một
phương thức vào một button, hàm hoặc phương thức này tự động được gọi khi click vào button đó.
Cú pháp
Tham số
Phương thức của Tkinter Button trong Python
Ví dụ Tkinter Button trong Python
Cú pháp
Sau đây là cú pháp của Tkinter Button trong Python:
1 W = Button(parent, options)
Tham số
parent: đại diện cho cửa sổ cha.
options: Dưới đây là danh sách các tùy chọn thường được sử dụng nhất cho Button trong Python.
Các tùy chọn này có thể được sử dụng như các cặp key-value được phân tách bằng dấu phẩy.
No Option Mô tả
1 activebackground Nó đại diện cho màu nền của button khi con trỏ chuột di chuyển đến button.
2 activeforeground Nó đại diện cho màu chữ của button khi con trỏ chuột di chuyển đến button.
5 Command Khi button được click thì hàm chỉ định được thực thi.
8 Height Chiều cao của button. Chiều cao được biểu thị bằng số dòng văn bản đối với
dòng văn bản hoặc số pixel đối với hình ảnh.
11 justify Căn chỉnh nhiều dòng văn bản. LEFT cho điều chỉnh bên trái, RIGHT cho
điều chỉnh bên phải và CENTER cho chính giữa.
15 State Nó có thể được gán cho DISABLED để vô hiệu hóa button (không thể click)
hoặc ACTIVE là kích hoạt (có thể click).
16 Underline Mặc định là -1, nghĩa là không có ký tự nào của văn bản trên button sẽ được
gạch dưới. Nếu không âm, ký tự văn bản tương ứng sẽ được gạch chân.
18 Wraplength Nếu giá trị này được đặt thành một số dương, các dòng văn bản sẽ được
bao để vừa với độ dài này.
No Phương thức Mô tả
1 flash() Làm cho button nhấp nháy nhiều lần giữa màu đang hoạt động và màu bình
thường.
2 invoke() Gọi lệnh callback của button và trả về những gì mà hàm đó trả về. Không có
tác dụng nếu nút bị vô hiệu hóa.
Ví dụ 2:
1 w = canvas(parent, options)
Dưới đây là danh sách các tùy chọn:
No Option Mô tả
1 bd Biểu thị chiều rộng đường viền. Chiều rộng mặc định là 2.
3 confine Nó được sử dụng để làm cho canvas không thể cuộn được bên ngoài vùng
cuộn.
4 cursor Con trỏ được sử dụng làm mũi tên, hình tròn, dấu chấm, v.v. trên canvas.
6 highlightcolor Nó đại diện cho màu nổi bật khi khi canvas được focus.
7 relief Nó đại diện cho loại đường viền. Các giá trị có thể là SUNKEN, RAISED,
GROOVE và RIDGE.
8 scrollregion Nó đại diện cho các tọa độ được chỉ định dưới dạng bộ tuple chứa vùng của
canvas.
11 xscrollcommand Nếu canvas có thể cuộn được, thuộc tính này phải là phương thức .set() của
thanh cuộn ngang.
12 yscrollincrement Hoạt động giống như xscrollincrement, nhưng điều chỉnh chuyển động theo
chiều dọc.
13 yscrollcommand Nếu canvas có thể cuộn được, thuộc tính này phải là phương thức .set () của
thanh cuộn dọc.
1
Kết quả:
Ví dụ 2:
1
from tkinter import *
2
3 top = Tk()
4 top.geometry("200x200")
5 # tao mot canvas
6 c = Canvas(top,bg = "pink",height = "200",width = 200)
arc = c.create_arc((5,10,150,200),start = 0,extent = 150, fill= "white")
7
c.pack()
8 top.mainloop()
9
Kết quả: