2016-08-22 11 views
-1

パスワードを保存する基本的なログインプログラムを作成しようとしていますが、パスワードの初期画面を作成する際に問題があります。entryからエントリを取得しようとしています。名前「エントリ」あなたがにselfキーワードを使用する必要がNameError:name 'entry'が定義されていません

class StartPage(tk.Frame): 
    def __init__(self, parent, controller): 
     tk.Frame.__init__(self, parent) 
     self.controller = controller 
     label = tk.Label(self, text="Welcome", font=TITLE_FONT) 
     label.pack(side="top", fill="x", pady=10) 
     self.entry = tk.Entry(self, text="lol") 
     self.entry.pack(side="top", fill="x", pady=10, padx=10) 
     def framemove(): 
      if entry.get == "password": 
       controller.show_frame("PageOne") 
      else: 
       tm.showerror("Login error") 

     button1 = tk.Button(self, text="Login", command=framemove) 
     button1.pack() 

感謝

答えて

0

が定義されていません:パスワードが正しいですが、私はそうすると、エラーNameErrorを取得できませんよかどうかをチェックする機能framemoveクラス内のオブジェクトを参照してください:

self.entry.get() 

また、ご覧のとおり、getの方法を一対の括弧で使用しています。
また、コードがバグ(インデントレベル、インポート、キーワードなど)です。

+0

私はもうエラーメッセージが表示されなくなりましたが、パスワードを入力しようとすると入力内容に関係なく間違っています – BadUserName

+0

'if self.entry.get()==" password ":print( ' right ')else:print(' wrong ') 'チェックアウトして何が起こるか教えてください。それがうまくいくなら、あなたの間違いは上記のケースで返されます。 –

+0

どちらの場合もまだ間違っています – BadUserName

関連する問題