Chào mừng các bạn đến với Rcom Dăm Yi blog - Kho tài liệu bổ ích!, Chúng tôi sẽ từng bước hoàn thiện để bạn đọc cảm thấy hài lòng, hữu ích!

Thứ Tư, 11 tháng 3, 2026

Học Lập Trình Tkinter Python - Từ Cơ Bản Đến Nâng Cao

Lập Trình Giao Diện Với Python Tkinter

Hệ thống bài giảng từ cơ bản đến ứng dụng thực tế (12 Ví dụ)

Kiến thức trọng tâm

Tkinter là thư viện chuẩn của Python dùng để tạo GUI. Để xây dựng một ứng dụng, chúng ta luôn đi theo trình tự: Khởi tạo -> Thêm Widget -> Bố trí -> Xử lý sự kiện.

Hệ thống ví dụ thực hành

Ví dụ 1: Cấu trúc khởi tạo CƠ BẢN

Python
import tkinter as tk
root = tk.Tk()
root.title("Xin chào Tkinter")
root.geometry("300x200")
root.mainloop()
  • tk.Tk(): Tạo ra cửa sổ "cha" (root).
  • geometry("WxH"): Định nghĩa kích thước cửa sổ.
  • mainloop(): Giữ cửa sổ luôn hiển thị.

Ví dụ 2: Hiển thị Label & Định dạng

Python
import tkinter as tk
root = tk.Tk()
lbl = tk.Label(root, text="Học Python tại Phan Chu Trinh", fg="blue", font=("Arial", 14, "bold"))
lbl.pack(pady=20)
root.mainloop()
  • fg: Màu chữ (Foreground).
  • font: Định dạng phông chữ, cỡ chữ, kiểu chữ.
  • pack(pady=20): Đặt widget vào cửa sổ và tạo khoảng cách trên-dưới 20px.

Ví dụ 5: Máy tính cộng số (Xử lý sự kiện)

Python
import tkinter as tk

def tinh():
    n1 = int(e1.get())
    n2 = int(e2.get())
    kq.config(text=f"Tổng là: {n1 + n2}")

root = tk.Tk()
e1 = tk.Entry(root); e1.pack()
e2 = tk.Entry(root); e2.pack()
btn = tk.Button(root, text="Cộng", command=tinh); btn.pack()
kq = tk.Label(root, text="Kết quả"); kq.pack()
root.mainloop()
  • e1.get(): Lấy giá trị từ ô nhập liệu (luôn là chuỗi).
  • config(): Thay đổi thuộc tính (ở đây là thay đổi văn bản kết quả) của widget khi chương trình đang chạy.

Ví dụ 9: Hộp thoại thông báo (Messagebox)

Python
import tkinter as tk
from tkinter import messagebox

def thong_bao():
    messagebox.showinfo("Thông báo", "Bạn đã lưu dữ liệu thành công!")

root = tk.Tk()
tk.Button(root, text="Lưu", command=thong_bao).pack(pady=50)
root.mainloop()
  • messagebox.showinfo(tiêu đề, nội dung): Hiển thị cửa sổ pop-up thông báo.

Ví dụ 11: Vẽ đồ họa (Canvas) NÂNG CAO

Python
import tkinter as tk
root = tk.Tk()
cv = tk.Canvas(root, width=200, height=200, bg="white")
cv.pack()

# Vẽ hình chữ nhật màu đỏ
cv.create_rectangle(50, 50, 150, 150, fill="red")
# Vẽ đường thẳng
cv.create_line(0, 0, 200, 200, fill="blue", width=3)

root.mainloop()
  • Canvas: Vùng không gian để vẽ hình đồ họa, biểu đồ.
  • create_rectangle(x1, y1, x2, y2): Vẽ hình chữ nhật dựa trên tọa độ góc trên bên trái và góc dưới bên phải.

Ví dụ 12: Đồng hồ kỹ thuật số thực tế

Python
import tkinter as tk
import time

def cap_nhat_gio():
    chuoi_gio = time.strftime("%H:%M:%S")
    lbl_clock.config(text=chuoi_gio)
    lbl_clock.after(1000, cap_nhat_gio) # Gọi lại hàm sau 1 giây

root = tk.Tk()
root.title("Đồng hồ PCT")
lbl_clock = tk.Label(root, font=("Courier", 40), bg="black", fg="lime")
lbl_clock.pack()

cap_nhat_gio()
root.mainloop()
  • time.strftime("%H:%M:%S"): Lấy giờ hệ thống định dạng Giờ:Phút:Giây.
  • after(ms, function): Kỹ thuật đệ quy giúp ứng dụng tự cập nhật mà không làm treo giao diện.

Tổng kết ứng dụng

Từ 12 ví dụ trên, bạn có thể kết hợp để tạo ra các sản phẩm như:

📚 Giáo dục: Phần mềm trộn đề thi (Sử dụng Entry, Button, Messagebox).
🛠 Quản lý: Quản lý thiết bị dạy học (Sử dụng Grid, SQLite, Treeview).

Không có nhận xét nào:

Đăng nhận xét

Bài đăng phổ biến

💬 Bình luận

💬 Bình luận

📌 Danh sách bình luận