Jednostavnu stranicu za prijavu lako je izraditi i odlično je mjesto za početak izgradnje vaše web stranice ili aplikacije.
Postoji više od milijardu web stranica na internetu. Kako bi se osigurala sigurnost korisničkih računa, mnoge web aplikacije - od internetskog bankarstva do društvenih medija - zahtijevaju stranicu za prijavu.
Naučite kako izraditi jednostavnu stranicu za prijavu pomoću Tkinter modula i upoznajte se s osnovnim konceptima izgradnje GUI aplikacija u Pythonu.
Modul Tkinter
Možete koristiti Tkinter za izradu stranice za prijavu koja prihvaća i potvrđuje korisničko ime i lozinku. Tkinter nudi razne widgete kao što su gumbi, oznake i tekstualni okviri koji olakšavaju razvoj aplikacija. Neke aplikacije koje možete razviti koristeći Tkinter uključuju a Aplikacija To-Do, Glazbeni player, a Aplikacija Pomodoro Timer, i a Igra zbrke riječi.
Da biste instalirali Tkinter, otvorite terminal i pokrenite:
pip instaliraj tkinter
Kako napraviti stranicu za prijavu koristeći Python
Ovdje možete pronaći izvorni kod za izradu stranice za prijavu pomoću Pythona GitHub spremište.
Uvezite potrebne biblioteke i inicijalizirajte korijenski prozor. Postavite naslov i veličinu prozora. Koristiti konfigurirati() funkciju, postavite boju pozadine.
uvoz tkinter
iz tkinter uvoz okvir za poruke
prozor = tkinter. Tk()
window.title("Stranica za prijavu pomoću Pythona")
window.geometry('750x550')
window.configure (bg='#8F00FF')
Definirajte funkciju, prijaviti se() koji će donijeti ključnu odluku na temelju korisničkih vjerodajnica. Ova jednostavna demonstracija upisuje valjane vjerodajnice; prava bi ih aplikacija vjerojatno dohvatila iz baze podataka.
Pohranite vjerodajnice i koristite dobiti() metoda svakog widgeta Entry za dohvaćanje podataka koje je korisnik unio. U skladu s validacijom podataka, prikažite okvir s porukom s odgovarajućim naslovom i porukom.
defprijaviti se():
korisničko ime = "iskoristiti"
lozinka = "muo"
ako username_entry.get()==korisničko ime i password_entry.get()==lozinka:
messagebox.showinfo (title="Prijava uspješna!", poruka="Uspješno ste se prijavili.")
drugo:
messagebox.showerror (title="pogreška", poruka="Neispravna Prijava.")
Definirajte Tkinter okvir da djeluje kao roditelj i dajte mu boju pozadine.
okvir = tkinter. Okvir (bg='#8F00FF')
Definirajte tri oznake za prijavu, korisničko ime i lozinku. Proslijedite roditeljski prozor u koji želite smjestiti oznake, tekst koji bi trebao prikazati, boju pozadine, boju fonta i stil fonta koji bi trebao imati.
prijavna_oznaka = tkinter. Oznaka (okvir, tekst="Stranica za prijavu pomoću Pythona", bg='#000000', fg="#DC143C", font=("Arial", 30))
korisničko_ime_oznaka = tkinter. Oznaka (okvir, tekst="Korisničko ime", bg='#8F00FF', fg="#FFFFFF", font=("Arial", 16, 'podebljano'))
oznaka_lozinke = tkinter. Oznaka (okvir, tekst="Lozinka", bg='#8F00FF', fg="#FFFFFF", font=("Arial", 16, 'podebljano'))
Definirajte dva widgeta za unos kako biste dobili podatke od korisnika. Postavite nadređeni prozor u koji ga želite smjestiti zajedno sa stilovima fonta. Koristiti pokazati atribut kao zvjezdicu za skrivanje lozinke koju korisnik upisuje na zaslonu.
unos_username = tkinter. Unos (okvir, font=("Arial", 16))
unos_lozinke = tkinter. Unos (okvir, show="*", font=("Arial", 16))
Definirajte gumb za prijavu koji prihvaća nadređeni prozor kao okvir koji ste ranije definirali, tekst treba prikazati, boju pozadine, boju fonta, stil fonta i naredbu koju treba izvršiti kada kliknuo.
login_button = tkinter. Gumb (okvir, tekst="Prijaviti se", bg="#DC143C", fg="#FFFFFF", font=("Arial", 16), naredba=prijava)
Upotrijebite upravitelj rešetki da postavite tri oznake, dva unosa i gumb za prijavu u organizirani tablični format. Oznaka za prijavu služit će kao zaglavlje i zauzimat će oba stupca. Ljepljiva opcija određuje na koji se rub ćelije widget treba zalijepiti. Na donošenje kao vijesti (sjever-istok-zapad-jug), program centrira tekst u vodoravnom i okomitom smjeru.
Postavite oznake na lijevu stranu, jednu ispod druge, i slijedite isto za widgete za unos na desnoj strani. Slično zaglavlju, postavite gumb za prijavu tako da zauzima oba stupca. Dajte odgovarajuće ispune u smjeru y za sve widgete.
login_label.grid (row=0, stupac=0, raspon stupaca=2, ljepljivo="vijesti", pady=40)
username_label.grid (row=1, stupac=0)
korisničko_ime_entry.grid (row=1, stupac=1, pady=20)
lozinka_oznaka.grid (red=2, stupac=0)
password_entry.grid (row=2, stupac=1, pady=20)
login_button.grid (row=3, stupac=0, raspon stupaca=2, pady=30)
Koristiti paket() da organizirate sve widgete u blokove i pokrenete Tkinter petlju događaja i osluškujete događaje dok ne zatvorite prozor.
frame.pack()
window.mainloop()
Sastavite sav kod i vaša stranica za prijavu je spremna za korištenje.
Uzorak izlaza aplikacije stranice za prijavu
Nakon pokretanja programa i unosa valjanih vjerodajnica, program prikazuje okvir s porukom da se korisnik može uspješno prijaviti.
Prilikom pokretanja programa s bilo kojom drugom vjerodajnicom, okvir s porukom prikazuje pogrešku u vezi s prijavom kao nevažećom.
Poboljšanje Python stranice za prijavu
Možete koristiti bazu podataka kao što je MySql da biste dohvatili zapise i potvrdili ih prema korisničkim vjerodajnicama. The mysql.konektor biblioteka vam pomaže uspostaviti vezu između vaše Python Tkinter aplikacije i MySql baze podataka.
Za poboljšano korisničko sučelje možete istražiti customtkinter modul. Izgrađen je isključivo na Tkinter modulu i pomaže vam u stvaranju modernih potpuno prilagodljivih widgeta koji nisu dostupni kao dio standardne Tkinter biblioteke. Kombinacija ove dvije biblioteke pojačat će vaše vještine GUI programiranja i postaviti vas kao odskočnu dasku u stvaranju sofisticiranijih aplikacija.