2016-01-21 3 views
2

Я пытаюсь создать основную форму для входа. У меня возникли проблемы с передачей значений моей функции, которая проверяет имя пользователя и пароль.Форма входа в систему Python-Tkinter-Basic

Вот мой код:

from tkinter import * 

class Application(Frame): 
    def __init__(self,master): 
     super(Application, self).__init__(master)#Set __init__ to the master class 
     self.grid() 
     self.create_main()#Creates function 

    def create_main(self): 
     print("testing") 
     self.title = Label(self, text=" Stuck In The Circle ")#TITLE 
     self.title.grid(row=0, column=2) 

     self.user_entry_label = Label(self, text="Username: ")#USERNAME LABEL 
     self.user_entry_label.grid(row=1, column=1) 

     self.user_entry = Entry(self)      #USERNAME ENTRY BOX 
     self.user_entry.grid(row=1, column=2) 

     self.pass_entry_label = Label(self, text="Password: ")#PASSWORD LABEL 
     self.pass_entry_label.grid(row=2, column=1) 

     self.pass_entry = Entry(self)      #PASSWORD ENTRY BOX 
     self.pass_entry.grid(row=2, column=2) 

     self.sign_in_butt = Button(self, text="Sign In",command = self.logging_in)#SIGN IN BUTTON 
     self.sign_in_butt.grid(row=5, column=2) 

    def logging_in(self): 
     print("hi") 
     user_get = user_entry.get()#Retrieve Username 
     pass_get = pass_entry.get()#Retrieve Password 

     if user_get == 'sam': 
      if pass_get == '123': 
       print("Welcome!") 






#Main 
root = Tk() 
root.title("Stuck in the Circle") 
root.geometry("400x100") 

app = Application(root)#The frame is inside the widgit 
root.mainloop()#Keeps the window open/running 

Вот моя ошибка:

Exception in Tkinter callback Traceback (most recent call last): File "C:\Users\Sam\AppData\Local\Programs\Python\Python35-32\lib\tkinter_init_.py", line 1549, in call return self.func(*args) File "C:/Users/Sam/Desktop/Computer Science/Python/Python- Modules/Tkinter/Tkinter Projects/Login Form GUI.py", line 31, in logging_in user_get = user_entry.get()#Retrieve Username NameError: name 'user_entry' is not defined

+0

Вот моя ошибка: –

+0

Исключение в обратном вызове Tkinter Traceback (последний последний звонок): Файл «C: \ Users \ Sam \ AppData \ Local \ Programs \ Python \ Python35-32 \ lib \ tkinter \ __ init__.py" , строка 1549, в __call__ return self.func (* args) Файл «C:/Users/Sam/Desktop/Computer Science/Python/Python-Modules/Tkinter/Tkinter Projects/Login Form GUI.py», строка 31 , в logging_in user_get = user_entry.get() # Восстановить имя пользователя NameError: имя 'user_entry' не определено –

+0

Возможный дубликат [Как я могу интегрировать TKinter с экраном входа в Python?] (https://stackoverflow.com/ вопросы/28156719/how-can-i-integrate-tkinter-with-python-log-in-screen) –

ответ

3
def logging_in(self): 
    print("hi") 
    user_get = self.user_entry.get()#Retrieve Username 
    pass_get = self.pass_entry.get()#Retrieve Password 

использование self.user_entry.get()

Когда вы вызываете переменные класса, вам нужно вызвать его self.variable_name

+0

Спасибо, много! Я работаю над этим часами, и я чувствую себя настолько глупо! Код работает так, как я этого хотел. Я очень ценю вашу помощь: D Хорошего дня! –

+0

никаких проблем :) выберите лучший ответ, когда у вас появится шанс! –

Смежные вопросы