import tkinter as tk from tkinter import simpledialog, messagebox from db import Database from gui import TheatreApp def ask_credentials(): root = tk.Tk() root.withdraw() username = simpledialog.askstring("Авторизация", "Введите имя пользователя БД:", parent=root) if username is None: root.destroy() return None, None password = simpledialog.askstring("Авторизация", "Введите пароль:", parent=root, show='*') root.destroy() if password is None: return None, None return username, password def main(): db = Database() while True: username, password = ask_credentials() if username is None: print("Вход отменён") return try: db.connect(username, password) break except Exception as e: messagebox.showerror("Ошибка подключения", f"Не удалось подключиться:\n{e}\nПроверьте имя пользователя и пароль.") app = TheatreApp(db) app.run() if __name__ == "__main__": main()