Загрузка данных


import tkinter as tk

class RegistrationWindow:
   
    def __init__(self, parent):
        self.parent = parent
        self.window = tk.Toplevel(parent)
        self.window.title("Регистрация")
        self.window.geometry("350x280")
        self.window.transient(parent)


        tk.Label(self.window, text="Регистрация нового пользователя", font=("Arial", 14)).pack(pady=10)


        entry_frame = tk.Frame(self.window)
        entry_frame.pack(pady=10)


        tk.Label(entry_frame, text="ФИО:", width=15, anchor="e").grid(row=0, column=0, padx=5, pady=2)
        self.fio_entry = tk.Entry(entry_frame)
        self.fio_entry.grid(row=0, column=1, padx=5, pady=2, sticky="ew")


        tk.Label(entry_frame, text="Логин:", width=15, anchor="e").grid(row=1, column=0, padx=5, pady=2)
        self.login_entry = tk.Entry(entry_frame)
        self.login_entry.grid(row=1, column=1, padx=5, pady=2, sticky="ew")


        tk.Label(entry_frame, text="Пароль:", width=15, anchor="e").grid(row=2, column=0, padx=5, pady=2)
        self.password_entry = tk.Entry(entry_frame, show="*")
        self.password_entry.grid(row=2, column=1, padx=5, pady=2, sticky="ew")


        tk.Button(self.window, text="Зарегистрироваться", bg="lightgreen").pack(pady=20)


class AdminApp:
    def __init__(self):
        self.root = tk.Tk()
        self.root.title("Вход")
        self.root.geometry("350x250")


        self.add_user_var = tk.BooleanVar()
        self.edit_user_var = tk.BooleanVar()
        self.delete_user_var = tk.BooleanVar()
        self.view_logs_var = tk.BooleanVar()


        self.admin_window = tk.Toplevel(self.root)
        self.admin_window.withdraw()
        self.admin_window.title("Админка")
        self.admin_window.geometry("350x350")

        self.admin2_window = tk.Toplevel(self.root)
        self.admin2_window.withdraw()
        self.admin2_window.title("Админка 2")
        self.admin2_window.geometry("400x150")



        tk.Label(self.root, text="Панель регистрации", font=("Arial", 14)).pack(pady=10)

        entry_frame = tk.Frame(self.root)
        entry_frame.pack(pady=10)

        tk.Label(entry_frame, text="Логин:", width=10, anchor="e").grid(row=0, column=0, padx=5)
        self.login_entry = tk.Entry(entry_frame)
        self.login_entry.grid(row=0, column=1, padx=5)

        tk.Label(entry_frame, text="Пароль:", width=10, anchor="e").grid(row=1, column=0, padx=5)
        self.password_entry = tk.Entry(entry_frame, show="*")
        self.password_entry.grid(row=1, column=1, padx=5)


        tk.Button(self.root, text="Войти", bg="lightblue", command=self.open_admin).pack(pady=20)

        tk.Button(self.root, text="Регистрация", bg="lightyellow", command=self.open_registration).pack(pady=10)



        tk.Label(self.admin_window, text="Панель управления", font=("Arial", 14)).pack(pady=10)

        tk.Checkbutton(self.admin_window, text="Добавить пользователя", variable=self.add_user_var).pack(anchor="w", padx=20, pady=2)
        tk.Checkbutton(self.admin_window, text="Редактировать пользователя", variable=self.edit_user_var).pack(anchor="w", padx=20, pady=2)
        tk.Checkbutton(self.admin_window, text="Удалить пользователя", variable=self.delete_user_var).pack(anchor="w", padx=20, pady=2)
        tk.Checkbutton(self.admin_window, text="Просмотреть логи", variable=self.view_logs_var).pack(anchor="w", padx=20, pady=2)

        tk.Frame(self.admin_window, height=2, bd=1, relief="sunken").pack(fill="x", pady=10)

        btn_frame = tk.Frame(self.admin_window)
        btn_frame.pack(pady=10)

        tk.Button(btn_frame, text="Назад", bg="lightgray", command=self.back_to_login).pack(side="left", padx=10)
        tk.Button(btn_frame, text="Вперед", bg="lightgreen", command=self.open_admin2).pack(side="left", padx=10)




        tk.Label(self.admin2_window, text="Управление пользователями", font=("Arial", 16)).pack(pady=40)
        tk.Button(self.admin2_window, text="Назад", bg="lightgray", command=self.back_to_admin).pack(pady=10)

    def open_admin(self):

        self.root.withdraw()
        self.admin_window.deiconify()

    def open_admin2(self):

        self.admin_window.withdraw()
        self.admin2_window.deiconify()

    def back_to_login(self):

        self.admin_window.withdraw()
        self.root.deiconify()

    def back_to_admin(self):

        self.admin2_window.withdraw()
        self.admin_window.deiconify()

    def open_registration(self):

         RegistrationWindow(self.root)

    def run(self):

         self.root.mainloop()


if __name__ == "__main__":
    app = AdminApp()
    app.run()