Computer >> Máy Tính >  >> Lập trình >> Python

Làm cách nào để tạm thời xóa tiện ích Tkinter mà không chỉ sử dụng .place?

Để đặt các vật dụng Tkinter bên trong Khung hoặc Canvas, bạn có thể sử dụng các trình quản lý hình học khác nhau. Trình quản lý hình học cho phép bạn thiết lập bố cục của tiện ích và cách chúng sẽ xuất hiện trong cửa sổ tkinter. Địa điểm () method là một trong những trình quản lý hình học đơn giản nhất được sử dụng để đặt vị trí của widget tương đối và rõ ràng cho cửa sổ. Chúng tôi cũng có thể sử dụng place () để tách các tiện ích con ra khỏi nhau, vì nó hỗ trợ thuộc tính tương đối để định vị tiện ích con so với các tiện ích khác.

Trong một số trường hợp, nếu bạn muốn tạm thời xóa một tiện ích cụ thể khỏi ứng dụng, bạn có thể sử dụng place_forget () phương pháp. Bạn cũng có thể sử dụng pack_forget () grid_forget () các phương pháp cho các trình quản lý hình học khác nhau để tạm thời xóa tiện ích con khỏi ứng dụng. Chúng ta có thể lấy một ví dụ để hiểu trường hợp sử dụng thực tế của nó.

Ví dụ

# Import the library
from tkinter import *

# Create an instance of window
win=Tk()

# Set the geometry of the window
win.geometry("700x300")

def forget_label():
   label.place_forget()

# Create a label widget
label=Label(win, text="This is a new Label text", font='Arial 17 bold')
label.place(relx=0.5, rely=0.2, anchor=CENTER)

# Create a button
button=Button(win, text="Remove It", command=forget_label)
button.place(relx=0.5, rely=0.5, anchor=CENTER)

win.mainloop()

Đầu ra

Chạy đoạn mã trên sẽ hiển thị một cửa sổ có tiện ích Nhãn và Nút.

Làm cách nào để tạm thời xóa tiện ích Tkinter mà không chỉ sử dụng .place?

Bất cứ khi nào nút "Xóa nó" được nhấn, nó sẽ xóa tiện ích nhãn khỏi cửa sổ.

Làm cách nào để tạm thời xóa tiện ích Tkinter mà không chỉ sử dụng .place?