Hộp thoại là một thành phần rất cần thiết của bất kỳ ứng dụng nào. Nó thường được sử dụng để tương tác với người dùng và giao diện ứng dụng. Chúng ta có thể tạo các hộp thoại cho bất kỳ ứng dụng tkinter nào bằng cách sử dụng cửa sổ Toplevel và các widget khác. Cửa sổ cấp trên bật lên nội dung phía trên tất cả các cửa sổ khác. Do đó, chúng ta có thể thêm nhiều thứ hơn trên cửa sổ cấp trên để xây dựng hộp thoại.
Ví dụ
Trong ví dụ này, chúng tôi đã tạo một hộp thoại phương thức có hai phần,
- Khởi tạo cửa sổ Toplevel.
- Định nghĩa hàm cho Sự kiện hộp thoại bật lên.
- Thêm tiện ích trong cửa sổ Toplevel.
- Định nghĩa hàm cho các tùy chọn Hộp thoại.
# Import required libraries from tkinter import * from tkinter import ttk # Create an instance of tkinter frame win = Tk() # Set the window size win.geometry("700x350") style = ttk.Style() style.theme_use('clam') # Define a function to implement choice function def choice(option): pop.destroy() if option == "yes": label.config(text="Hello, How are You?") else: label.config(text="You have selected No") win.destroy() def click_fun(): global pop pop = Toplevel(win) pop.title("Confirmation") pop.geometry("300x150") pop.config(bg="white") # Create a Label Text label = Label(pop, text="Would You like to Proceed?", font=('Aerial', 12)) label.pack(pady=20) # Add a Frame frame = Frame(pop, bg="gray71") frame.pack(pady=10) # Add Button for making selection button1 = Button(frame, text="Yes", command=lambda: choice("yes"), bg="blue", fg="white") button1.grid(row=0, column=1) button2 = Button(frame, text="No", command=lambda: choice("no"), bg="blue", fg="white") button2.grid(row=0, column=2) # Create a Label widget label = Label(win, text="", font=('Aerial', 14)) label.pack(pady=40) # Create a Tkinter button ttk.Button(win, text="Click Here", command=click_fun).pack() win.mainloop()
Đầu ra
Khi chúng ta chạy đoạn mã trên, nó sẽ hiển thị một cửa sổ có Nút để mở hộp thoại phương thức.
Nhấp vào nút sẽ mở Hộp thoại phương thức.