2014-12-26 11 views
1

파이썬 (Tkinter)에서 버튼을 클릭하면 기존 레이블을 어떻게 숨길 수 있습니까?파이썬에서 버튼을 클릭 할 때 레이블을 숨기기

+0

가능한 복제 [Tkinter에서 위젯을 보이지 않게하는 방법이 있습니까?] (http://stackoverflow.com/questions/3819354/in-tkinter-is-there-any-way-to-make- a-widget-not-visible) –

답변

2

이것은 실제로 사용한 지오메트리 관리자에 따라 다릅니다. 레이블을 만들려면

lbl = Tkinter.Label(parent) 

을 사용하는 경우 다음 중 하나를 사용하여 레이블을 숨 깁니다.

lbl.grid_forget() 
lbl.pack_forget() 
lbl.place_forget() 

편집 (작업 예)

import tkinter 

class MyClass(tkinter.Frame): 
    def __init__(self,parent, *args, **kwargs): 
     tkinter.Frame.__init__(self, parent, *args, **kwargs) 

     self.btn = tkinter.Button(self,text='Don\'t push me',command=self.buttonCmd) 
     self.btn.grid(row=0,column=0,sticky='nwes') 
     self.lbl = tkinter.Label(self,text='Push it, it\'s fun') 
     self.lbl.grid(row=0,column=1,sticky='nwes') 

    def buttonCmd(self,*args,**kwargs): 
     self.lbl.grid_forget() 

root = tkinter.Tk() 
MyFrame = MyClass(root) 
MyFrame.pack(expand='true',fill='both') 
root.mainloop() 
+0

@ baited- 감사합니다! 나를 위해 잘 작동합니다. 정확히 내가 필요한 것. :디 – kienah

0

를 사용하여 라벨을 숨길 grid_remove()를 사용할 수 있습니다. 은 self.myLabel.grid_remove()입니다. 다시 표시하려면 self.myLabel.grid()을 사용하십시오. 위젯이 그리드의 원래 위치에 표시됩니다.

관련 문제