2016-12-29 22 views
0

私はそれがここ を追加したコードの関連する作品だいたら、ラベルとウィジェットを削除するトラブル抱え削除:私はそれらを削除するように見えることはできません追加されたウィジェット一度Kivyウィジェット

logi= True 
    if data == []: 

     logn =Label(text= "Incorrect Username",color=(190,0,0,1), 
        pos_hint={"right":1.035,"top":1.14}) 
     self.add_widget(logn) 

     logu =Label(text= "Incorrect Password",color=(190,0,0,1), 
       pos_hint={"right":1.035,"top":1.04}) 
     self.add_widget(logu) 

     logi= False 

    if logi == True: 

     textinput.text='' 
     textinput2.text='' 

     if 'logn' in locals() and 'logu' in locals() : 
      self.remove_widget(logn) 
      self.remove_widget(logu) 

を、私がif 'logn' in locals() and 'logu' in locals() :ステートメントを削除した場合、上記のステートメントがないとウィジェットが追加されたことを確認するたびに「割り当て前にローカル変数が参照されています」というエラーが表示されます

答えて

0

私はこのメソッドを2回データ== [] 2回目のデータ= [...])。

...

logi= True 
if data == []: 

    self.logn =Label(text= "Incorrect Username",color=(190,0,0,1), 
       pos_hint={"right":1.035,"top":1.14}) 
    self.add_widget(self.logn) 

    self.logu =Label(text= "Incorrect Password",color=(190,0,0,1), 
      pos_hint={"right":1.035,"top":1.04}) 
    self.add_widget(self.logu) 

    logi= False 

if logi == True: 

    textinput.text='' 
    textinput2.text='' 

    if hasattr(self, 'logn'): #check that we put something here before... 
     self.remove_widget(self.logn) 
     self.remove_widget(self.logu) 

注私は自己を追加したすべての場所 - だから、あなたは(自己をインスタンス上に置く)の手であなたの変数を維持する必要があります