1. Mục tiêu:
- Messagebox().
- Bài tập tổng hợp.
2. Thành phần giao diện (tiếp)
- Hộp thông báo (messagebox()):
-
- Sử dụng để hiển thị các hộp thoại thông báo (như cảnh báo, lỗi, thông tin) và nhận phản hồi (như chọn Có/Không).
- Các loại hộp thoại phổ biến:
+ Thông tin: messagebox.showinfo("tiêu đề", "nội dung thông báo")
+ Cảnh báo: messagebox.showwarning("tiêu đề", "nội dung thông báo")
+ Lỗi: messagebox.showerror("tiêu đề", "nội dung thông báo")
+ Hỏi người dùng (Có/Không): messagebox.askyesno("tiêu đề", "nội dung thông báo") (trả về True hoặc False)
-
- Thư viện: from tkinter import messagebox
- Ví dụ: Tạo cửa sổ gồm các thành phần như hình sau và khi người sử dụng nhấn nút "Thêm" mà chưa nhập họ tên sẽ hiện thông báo "Vui lòng nhập họ và tên bạn!"

code tham khảo:
import tkinter as tk
from tkinter import messagebox
def thuc_hien():
hoten = txt_hoten.get()
if hoten == "":
messagebox.showwarning("Thông báo", "Vui lòng nhập họ và tên bạn!")
else:
messagebox.showinfo("Thông báo", "Rất tốt, cảm ơn!")
cua_so = tk.Tk()
cua_so.title("Massage-frame")
cua_so.geometry("350x350")
cua_so.columnconfigure(0, weight=1)
frame_nhap = tk.Frame(cua_so)
frame_nhap.grid(row=0, column=0, pady=6)
lbl_hoten = tk.Label(frame_nhap, text="Nhập họ và tên: ")
lbl_hoten.grid(row=0, column=0, pady=6)
txt_hoten = tk.Entry(frame_nhap)
txt_hoten.grid(row=0, column=1, pady=6)
btn_them = tk.Button(frame_nhap, text="Thêm", command=thuc_hien)
btn_them.grid(row=0, column=2, pady=6, padx=6)
cua_so.mainloop()
- Khi nào sử dụng từng loại thông báo trong các phần mềm thực tế:
Loại Sử dụng Ví dụ showinfo() Thành công, hoàn thành Gọi tên học sinh ngẫu nhiên; Lưu danh sách học sinh thành công;... showwarning() Thiếu dữ liệu, chưa chọn, dữ liệu trùng Chưa cập nhật dữ liệu vào textbox; Nhập dữ liệu trùng; Chưa chọn học sinh để xóa;... showerror() Lỗi hệ thống, lỗi file, lỗi dữ liệu Không tìm thấy tệp tin đính kèm; Nhập sai kiểu dữ liệu;... askyesno() Xóa, thoát, ghi đè dữ liệu Trước khi tắt chương trình; xóa chương trình; nhập dữ liệu trùng;...
3. Bài tập
Viết chương trình tạo cửa sổ gồm 2 nút nhấn:
- Nút nhấn: "Hiển thị thông báo" khi người sử dụng nhấn vào chức năng này sẽ hiển thị hộp thoại với tiêu đề là "Thông báo" và nội dung thông báo là "Chào mừng bạn đến với Tkinter!"
- Nút nhấn: "Xác nhận" khi người sử dụng nhấn vào chức năng này sẽ hiển thị hộp thoại với tiêu đề là "Xác nhận" và nội dung thông báo là "Bạn có muốn tiếp tục không?" Nếu nhấn Yes thì in ra console "Người dùng chọn có" còn nếu nhấn No thì in ra console "Người dùng chọn không"