Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

.place만 사용하지 않고 Tkinter 위젯을 일시적으로 제거하는 방법은 무엇입니까?

<시간/>

프레임이나 캔버스 내부에 Tkinter 위젯을 배치하려면 다양한 지오메트리 관리자를 사용할 수 있습니다. 지오메트리 관리자를 사용하면 위젯의 레이아웃과 위젯이 tkinter 창에 표시되는 방식을 설정할 수 있습니다. 장소() 메소드는 창에 상대적이고 명시적으로 위젯의 위치를 ​​설정하는 데 사용되는 가장 간단한 지오메트리 관리자 중 하나입니다. place()를 사용할 수도 있습니다. 다른 위젯을 기준으로 위젯을 배치하는 상대 속성을 지원하므로 위젯을 서로 분리하는 메서드입니다.

경우에 따라 애플리케이션에서 특정 위젯을 일시적으로 제거하려면 place_forget() 방법. pack_forget()을 사용할 수도 있습니다. 및 grid_forget() 다양한 지오메트리 관리자가 애플리케이션에서 위젯을 일시적으로 제거하는 방법. 실제 사용 사례를 이해하기 위해 예를 들 수 있습니다.

예시

# 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()

출력

위의 코드를 실행하면 레이블 위젯과 버튼이 있는 창이 표시됩니다.

.place만 사용하지 않고 Tkinter 위젯을 일시적으로 제거하는 방법은 무엇입니까?

"제거" 버튼을 누를 때마다 창에서 레이블 위젯이 제거됩니다.

.place만 사용하지 않고 Tkinter 위젯을 일시적으로 제거하는 방법은 무엇입니까?