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.

instagram viewer

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.