Загрузка данных
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()