Я недавно создал программу tkinter для входа в игру в кости. Игра еще не создана, так как у меня возникли проблемы при входе. Файл, созданный при использовании реестра, кажется, читается по-разному при входе в систему? Я положил те же самые вещи, которые не распознаются. Спасибо за любую помощь, я новичок в переполнении стека, поэтому я не знаю, как использовать этот сайт.
from tkinter import *
def register_user():
username_info = username.get()
password_info = password.get()
file=open(username_info+".txt", "w")
file.write(username_info+"\n")
file.write(password_info)
file.close()
username_entry.delete(0, END)
password_entry.delete(0, END)
Label(screen1, text = "Registration Sucess", fg = "green" ,font = ("Ariel", 11)).pack()
screen1.after(1000, lambda: screen1.destroy())
def register():
global screen1
screen1 = Toplevel(screen)
screen1.title("Register")
screen1.geometry("300x250")
global username
global password
global username_entry
global password_entry
username = StringVar()
password = StringVar()
Label(screen1, text = "Please enter details below to register:").pack()
Label(screen1, text = "").pack()
Label(screen1, text = "Username * ").pack()
username_entry = Entry(screen1, textvariable = username)
username_entry.pack()
Label(screen1, text = "Password * ").pack()
password_entry = Entry(screen1, textvariable = password)
password_entry.pack()
Label(screen1, text = "").pack()
Button(screen1, text = "Register", bg = "white", width = 10, height = 1, command = register_user).pack()
def login_user():
username_info = username.get()
password_info = password.get()
file=open(username_info+".txt", "r") #<-------------- This is the part that doesnt work
lines = file.readlines() # It should recognise the username and it's corresponding file, and put login success, then close
a = lines[0]
b = lines[1]
if a == username_entry and b == password_entry:
Label(screen2, text = "Login Sucess", fg = "green" ,font = ("Ariel", 11)).pack()
screen2.after(1000, lambda: screen2.destroy())
else:
Label(screen2, text = "Login Failure. Please Try Again.", fg = "red", font = ("Ariel", 11)).pack()
def login():
global screen2
screen2 = Toplevel(screen)
screen2.title("Login")
screen2.geometry("300x250")
global username
global password
global username_entry
global password_entry
username = StringVar()
password = StringVar()
Label(screen2, text = "Please enter login details below:").pack()
Label(screen2, text = "").pack()
Label(screen2, text = "Username * ").pack()
username_entry = Entry(screen2, textvariable = username)
username_entry.pack()
Label(screen2, text = "Password * ").pack()
password_entry = Entry(screen2, textvariable = password)
password_entry.pack()
Label(screen2, text = "").pack()
Button(screen2, text = "Login", bg = "white", width = 10, height = 1, command = login_user).pack()
def main_screen():
global screen
screen = Tk()
screen.geometry("300x250")
screen.title("Welcome!")
Label(text = "Welcome to James' Dice Game!", bg = "lightskyblue", width = "300", height = "2", font = ("Ariel", 12)).pack()
Label(text = "").pack()
Button(text = "Login", bg = "white", height = "2", width = "30", command = login).pack()
Label(text = "").pack()
Button(text = "Register", bg = "white", height = "2", width = "30", command = register).pack()
screen.mainloop()
main_screen()