You are on page 1of 2

Tạo Tkinter Hello World

Hãy cùng tìm hiểu kiến thức cơ bản về Tkinter bằng cách tạo một tập lệnh Hello World
đơn giản cho Tkinter bằng cách thực hiện các bước sau:
1. Tạo một tệp mới trong IDLE hoặc trình chỉnh sửa yêu thích của bạn, nhập thông
tin sau mã và lưu nó dưới dạng hello_tkinter.py:
"""Hello World application for Tkinter"""
from tkinter import *
from tkinter.ttk import *
root = Tk()
label = Label(root, text="Hello World")
label.pack()
root.mainloop()
2. Chạy điều này trong IDLE bằng cách nhấn F5 hoặc trong thiết bị đầu cuối của
bạn bằng cách nhập lệnh sau:
python3 hello_tkinter.py
Bạn sẽ thấy một cửa sổ rất nhỏ hiện lên với dòng chữ Hello World như thể hiện
trong ảnh chụp màn hình sau:
3. Đóng cửa sổ và quay lại màn hình trình chỉnh sửa của bạn. Hãy phá vỡ điều này
mã và nói về những gì nó làm:
- from tkinter import *: Điều này nhập thư viện Tkinter vào toàn cầu không gian
tên. Đây không phải là phương pháp hay nhất, vì nó lấp đầy không gian tên của
bạn với nhiều lớp mà bạn có thể vô tình ghi đè lên, nhưng không sao đối với các
tập lệnh rất nhỏ.
- from tkinter.ttk import *: Điều này nhập ttk hoặc tiện ích Tk theo chủ đề thư
viện. Chúng tôi sẽ sử dụng thư viện này trong suốt cuốn sách, vì nó thêm một
số lượng vật dụng hữu ích và cải thiện giao diện của vật dụng. Vì chúng tôi đang
thực hiện nhập dấu sao ở đây, các tiện ích Tk của chúng tôi sẽ được thay thế
bằng các tiện ích ttk đẹp hơn ở bất cứ nơi nào có thể áp dụng (ví dụ, đối tượng
Nhãn của chúng tôi).
- root = Tk(): Điều này tạo ra đối tượng ứng dụng gốc hoặc ứng dụng chính của
chúng tôi. Cái này đại diện cho cửa sổ cấp cao nhất chính và chuỗi thực thi chính
của ứng dụng, vì vậy chỉ nên có một và chỉ một phiên bản của Tk cho mọi ứng
dụng.
- label = Label(root, text="Hello World"): Điều này tạo ra một đối tượng Nhãn
mới. Như tên của nó, một đối tượng Nhãn chỉ là một tiện ích để hiển thị văn bản
(hoặc hình ảnh). Nhìn kỹ hơn vào dòng này, chúng ta thấy như sau:
o Đối số đầu tiên mà chúng ta truyền vào Label () là đối số chính hoặc đối
số chính tiện ích con. Các widget Tkinter được sắp xếp theo thứ bậc bắt
đầu với cửa sổ gốc, mỗi tiện ích con được chứa bởi nữa. Bất cứ khi nào
bạn tạo một widget, đối số đầu tiên của bạn sẽ là đối tượng widget có
chứa widget mới. Trong này trường hợp, chúng tôi đang đặt đối tượng
Nhãn của mình trên ứng dụng chính cửa sổ.
o Đối số thứ hai là đối số từ khóa chỉ định văn bản sẽ được hiển thị trên đối
tượng Nhãn.
o Chúng tôi lưu trữ phiên bản Nhãn mới trong một biến, nhãn, để chúng tôi
có thể làm được nhiều việc hơn sau này.
- label.pack():Điều này đặt tiện ích nhãn mới vào tiện ích con của nó. Trong
trường hợp này, chúng tôi đang sử dụng phương thức pack (), phương thức đơn
giản nhất ba phương pháp quản lý hình học bạn có thể sử dụng. Chúng ta sẽ tìm
hiểu về chi tiết hơn trong các chương sau.
- root.mainloop(): Dòng cuối cùng này bắt đầu vòng lặp sự kiện chính của chúng
tôi. Vòng lặp này chịu trách nhiệm xử lý tất cả các sự kiện — tổ hợp phím, chuột
nhấp chuột, v.v. — và nó sẽ chạy cho đến khi ngừng chương trình. Đây là
thường là dòng cuối cùng của bất kỳ tập lệnh Tkinter nào, vì bất kỳ mã nào sau
nó sẽ không chạy cho đến khi cửa sổ chính được đóng lại.
Hãy dành một chút thời gian và thử nghiệm với tập lệnh này bằng cách thêm các tiện
ích khác trước lệnh gọi root.mainloop (). Bạn có thể thêm các đối tượng Nhãn khác
hoặc thử Nút (tạo nút có thể nhấp) hoặc Entry (tạo trường nhập văn bản).
Cũng giống như Nhãn, các tiện ích con này được khởi tạo bằng đối tượng mẹ (sử dụng
root) và tham số văn bản. Đừng quên gọi pack () trên widget của bạn để thêm chúng vào
cửa sổ.
Bạn cũng có thể thử nhận xét về quá trình nhập ttk, để xem liệu bạn có nhận thấy sự
khác biệt trong giao diện của các vật dụng. Tùy thuộc vào hệ điều hành của bạn, nó có
thể trông khác nhau hay không.

You might also like