Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีลบวิджชั่น Tkinter ชั่วคราวโดยไม่ใช้ .place

ในการวางวิджชั่น Tkinter ภายใน Frame หรือ Canvas คุณสามารถใช้ตัวจัดการเรขาคณิตต่างๆ ตัวจัดการเรขาคณิตช่วยให้คุณตั้งค่าเลย์เอาต์ของวิджชั่นและวิธีที่พวกมันจะปรากฏในหน้าต่าง Tkinter เมธอด place() เป็นหนึ่งในตัวจัดการเรขาคณิตที่เรียบง่ายที่สุด ซึ่งใช้ตั้งค่าตำแหน่งของวิджชั่นแบบสัมพัทธ์และชัดเจนกับหน้าต่าง เรายังสามารถใช้เมธอด place() เพื่อแยกวิджชั่นจากกันได้ เนื่องจากรองรับคุณสมบัติสัมพัทธ์ในการจัดตำแหน่งวิджชั่นตามสัมพันธ์กับอื่นๆ

ในบางกรณี หากคุณต้องการลบวิджชั่นเฉพาะออกจากแอปพลิเคชันชั่วคราว คุณสามารถใช้เมธอด place_forget() คุณอาจใช้ pack_forget() และ grid_forget() สำหรับตัวจัดการเรขาคณิตต่างๆ เพื่อลบวิджชั่นออกจากแอปพลิเคชันชั่วคราว เราสามารถดูตัวอย่างเพื่อเข้าใจกรณีการใช้งานจริงได้

ตัวอย่าง

# นำเข้าไลบรารี
from tkinter import *

# สร้างอินสแตนซ์หน้าต่าง
win = Tk()

# กำหนดเรขาคณิตหน้าต่าง
win.geometry("700x300")

def forget_label():
    label.place_forget()

# สร้างวิджชั่นป้ายกำกับ
label = Label(win, text="This is a new Label text", font='Arial 17 bold')
label.place(relx=0.5, rely=0.2, anchor=CENTER)

# สร้างปุ่ม
button = Button(win, text="Remove It", command=forget_label)
button.place(relx=0.5, rely=0.5, anchor=CENTER)

win.mainloop()

ผลลัพธ์

การรันโค้ดด้านบนจะแสดงหน้าต่างพร้อมวิджชั่นป้ายกำกับและปุ่ม

วิธีลบวิджชั่น Tkinter ชั่วคราวโดยไม่ใช้ .place

ทุกครั้งที่กดปุ่ม "Remove It" จะลบวิджชั่นป้ายกำกับออกจากหน้าต่าง

วิธีลบวิджชั่น Tkinter ชั่วคราวโดยไม่ใช้ .place