ในการพัฒนาแอปพลิเคชัน บางครั้งเราต้องการแสดงหรือซ่อน Widget ตามเงื่อนไข Tkinter มีเมธอดสำหรับจัดการเรื่องนี้คือ
- pack_forget() - ใช้ซ่อน Widget
- pack() - ใช้แสดง Widget ที่ซ่อนไว้
ทั้งสองเมธอดสามารถเรียกใช้ผ่านฟังก์ชัน lambda หรือ anonymous function ได้
ตัวอย่างโค้ด
# นำเข้าไลบรารีที่จำเป็น
from tkinter import *
# สร้างอินสแตนซ์ของเฟรม Tkinter
win = Tk()
# กำหนดขนาดหน้าต่าง
win.geometry("650x450")
# ฟังก์ชันซ่อน Widget
def hide_widget(widget):
widget.pack_forget()
# ฟังก์ชันแสดง Widget
def show_widget(widget):
widget.pack()
# สร้าง Label Widget
label = Label(win, text="Showing the Message", font=('Helvetica bold', 14))
label.pack(pady=20)
# สร้างปุ่มซ่อนและแสดง
button_hide = Button(win, text="Hide", command=lambda: hide_widget(label))
button_hide.pack(pady=20)
button_show = Button(win, text="Show", command=lambda: show_widget(label))
button_show.pack()
win.mainloop()
ผลลัพธ์
เมื่อรันโค้ด จะแสดงหน้าต่างที่มีปุ่ม "Show" และ "Hide" สำหรับควบคุมการแสดง/ซ่อน Label

คลิกปุ่ม "Hide" เพื่อซ่อนข้อความ Label และ "Show" เพื่อแสดงข้อความ Label อีกครั้ง
