Jednoduchou přihlašovací stránku lze snadno vytvořit a je to skvělé místo, kde můžete začít s tvorbou webu nebo aplikace.
Na internetu je více než miliarda webových stránek. Aby byly účty uživatelů bezpečné, mnoho webových aplikací – od online bankovnictví po sociální média – vyžaduje přihlašovací stránku.
Naučte se vytvořit jednoduchou přihlašovací stránku pomocí modulu Tkinter a seznamte se se základními koncepty vytváření GUI aplikací v Pythonu.
Modul Tkinter
Tkinter můžete použít k vytvoření přihlašovací stránky, která přijímá a ověřuje uživatelské jméno a heslo. Tkinter nabízí řadu widgetů, jako jsou tlačítka, štítky a textová pole, které usnadňují vývoj aplikací. Některé aplikace, které můžete vyvíjet pomocí Tkinter, zahrnují a Aplikace To-Do, Hudební přehrávač, a Aplikace Pomodoro Timera a Slovní míchanice.
Chcete-li nainstalovat Tkinter, otevřete terminál a spusťte:
pip nainstalovat tkinter
Jak vytvořit přihlašovací stránku pomocí Pythonu
Zdrojový kód pro vytvoření přihlašovací stránky pomocí Pythonu najdete v tomto úložiště GitHub.
Importujte požadované knihovny a inicializujte kořenové okno. Nastavte název a velikost okna. Za použití konfigurovat() funkce, nastavte barvu pozadí.
import tkinter
z tkinter import schránka zpráv
okno = tkinter. Tk()
window.title("Přihlašovací stránka pomocí Pythonu")
window.geometry('750x550')
window.configure (bg='#8F00FF')
Definujte funkci, přihlásit se() která učiní klíčové rozhodnutí na základě přihlašovacích údajů uživatele. Toto jednoduché demo napevno zakóduje platné přihlašovací údaje; skutečná aplikace by je pravděpodobně získala z databáze.
Uložte přihlašovací údaje a použijte dostat() metoda každého widgetu Entry k načtení dat, která uživatel zadal. Podle ověření dat zobrazte okno se zprávou s příslušným názvem a zprávou.
defpřihlásit se():
uživatelské jméno = "makeuseof"
heslo = "muo"
-li username_entry.get()==uživatelské jméno a password_entry.get()==heslo:
messagebox.showinfo (title="Přihlášení úspěšné!", zpráva="Úspěšně jste se přihlásili.")
jiný:
messagebox.showerror (title="Chyba", zpráva="Neplatné přihlášení.")
Definujte rámec Tkinter, aby fungoval jako rodič, a dejte mu barvu pozadí.
rám = tkinter. Rám (bg='#8F00FF')
Definujte tři štítky pro přihlašovací jméno, uživatelské jméno a heslo. Předejte nadřazené okno, do kterého chcete štítky umístit, text, který by měl zobrazovat, barvu pozadí, barvu písma a styl písma, který by měl mít.
login_label = tkinter. Štítek (rámeček, text="Přihlašovací stránka pomocí Pythonu", bg='#000000', fg="#DC143C", font=("Arial", 30))
username_label = tkinter. Štítek (rámeček, text="uživatelské jméno", bg='#8F00FF', fg="#FFFFFF", font=("Arial", 16, 'tučně'))
password_label = tkinter. Štítek (rámeček, text="Heslo", bg='#8F00FF', fg="#FFFFFF", font=("Arial", 16, 'tučně'))
Definujte dva vstupní widgety pro získání dat od uživatele. Nastavte rodičovské okno, do kterého jej chcete umístit, spolu se styly písem. Použijte ukázat atribut jako hvězdička pro skrytí hesla, které uživatel zadá na obrazovce.
username_entry = tkinter. Vstup (rámeček, písmo=("Arial", 16))
password_entry = tkinter. Vstup (rám, show="*", font=("Arial", 16))
Definujte tlačítko pro přihlášení, které akceptuje nadřazené okno jako rámeček, který jste definovali dříve, jeho text by měl zobrazit, barvu pozadí, barvu písma, styl písma a příkaz, který má kdy provést klikli.
login_button = tkinter. Tlačítko (rámeček, text="Přihlásit se", bg="#DC143C", fg="#FFFFFF", font=("Arial", 16), příkaz=přihlášení)
Pomocí správce mřížky umístěte tři štítky, dva záznamy a přihlašovací tlačítko do organizovaného tabulkového formátu. Přihlašovací štítek bude fungovat jako záhlaví a bude zabírat oba sloupce. Volba sticky určuje, ke kterému okraji buňky se má widget přilepit. Při předání jako zprávy (severovýchod-západ-jih), program vycentruje text v horizontálním i vertikálním směru.
Umístěte štítky na levou stranu, jeden pod druhý, a postupujte stejně pro vstupní widgety na pravé straně. Podobně jako v záhlaví umístěte přihlašovací tlačítko na oba sloupce. Všem widgetům dejte vhodné odsazení ve směru y.
login_label.grid (row=0, sloupec=0, rozpětí sloupců=2, lepkavý="zprávy", pady=40)
username_label.grid (row=1, sloupec=0)
username_entry.grid (row=1, sloupec=1, pady=20)
password_label.grid (row=2, sloupec=0)
password_entry.grid (row=2, sloupec=1, pady=20)
login_button.grid (row=3, sloupec=0, rozpětí sloupců=2, pady=30)
Použijte balíček() uspořádat všechny widgety do bloků a spustit smyčku událostí Tkinter a naslouchat událostem, dokud nezavřete okno.
frame.pack()
window.mainloop()
Dejte celý kód dohromady a vaše přihlašovací stránka je připravena k použití.
Ukázkový výstup aplikace přihlašovací stránky
Při spuštění programu a zadání platných přihlašovacích údajů program zobrazí okno se zprávou, že se uživatel může úspěšně přihlásit.
Při spuštění programu s jakýmkoli jiným pověřením se ve zprávě zobrazí chyba týkající se přihlášení jako neplatného.
Vylepšení přihlašovací stránky Pythonu
K načtení záznamů a jejich ověření podle pověření uživatele můžete použít databázi, jako je MySql. The mysql.connector knihovna vám pomůže vytvořit spojení mezi vaší aplikací Python Tkinter a databází MySql.
Pro vylepšené uživatelské rozhraní můžete prozkoumat customtkinter modul. Je čistě postaven na modulu Tkinter a pomáhá vám vytvářet moderní plně přizpůsobitelné widgety, které nejsou dostupné jako součást standardní knihovny Tkinter. Kombinace těchto dvou knihoven rozšíří vaše znalosti programování GUI a stane se odrazovým můstkem při vytváření sofistikovanějších aplikací.