Delphi pieteikšanās formas kods

Kā ar paroli aizsargāt savu Delphi lietojumprogrammu

Burtu kauliņi, kas raksta vārdu

Noras Kerolas fotogrāfija / Getty Images





Galvenā veidlapa Delphi lietojumprogramma ir forma (logs), kas ir pirmā, kas izveidota lietojumprogrammas galvenajā daļā. Ja jums ir jāievieš kāda veida autorizācija savai Delphi lietojumprogrammai, iespējams, vēlēsities parādīt pieteikšanās/paroles dialoglodziņu pirms galvenās veidlapas izveides un parādīšanas lietotājam. Īsāk sakot, ideja ir izveidot, parādīt un iznīcināt 'pieteikšanās' dialoglodziņu pirms galvenās veidlapas izveides.

Delphi galvenā forma

Kad tiek izveidots jauns Delphi projekts, Form1 automātiski kļūst par MainForm rekvizīta vērtību (globālā Pieteikums objekts). Lai rekvizītam MainForm piešķirtu citu veidlapu, izmantojiet lapu Veidlapas Projekts > Opcijas dialoglodziņš projektēšanas laikā. Kad galvenā veidlapa tiek aizvērta, lietojumprogramma tiek pārtraukta.



Pieteikšanās/paroles dialoglodziņš

Sāksim ar pieteikuma galvenās formas izveidi. Izveidojiet jaunu Delphi projektu, kurā ir viena veidlapa. Šī veidlapa pēc konstrukcijas ir galvenā forma.

Ja maināt veidlapas nosaukumu uz “TMainForm” un saglabājat vienību kā “main.pas”, projekta pirmkods izskatās šādi (projekts tika saglabāts kā 'PasswordApp'):



|_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_|

Tagad pievienojiet projektam otru veidlapu. Pēc konstrukcijas otrā pievienotā veidlapa tiek parādīta dialoglodziņa Projekta opcijas sarakstā 'Automātiski izveidot veidlapas'.

Nosauciet otro veidlapu 'TLoginForm' un noņemiet to no saraksta 'Automātiski izveidot veidlapas'. Saglabājiet vienību kā 'login.pas'.

Pievienojiet veidlapai etiķeti, rediģēšanu un pogu, kam seko a klases metode lai izveidotu, parādītu un aizvērtu pieteikšanās/paroles dialoglodziņu. Metode 'Izpildīt' atgriež patieso vērtību, ja lietotājs paroles lodziņā ir ievadījis pareizo tekstu.

Šeit ir pilns avota kods:



|_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_|

LogInButton: TButton;
pwdLabel: TLabel;
paroleRediģēt: TEdit;
procedūra LogInButtonClick(Sūtītājs: TObject) ;

|_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_|

Izpildes metodedinamiski radaTLoginForm gadījumu un parāda to, izmantojot ShowModal metodi. ShowModal neatgriežas, kamēr veidlapa nav aizvērta. Kad veidlapa tiek aizvērta, tā atgriež vērtību ModalResult īpašums.



“LogInButton” OnClick notikumu apdarinātājs piešķir “mrOk” rekvizītam ModalResult, ja lietotājs ir ievadījis pareizo paroli (kas iepriekš minētajā piemērā ir “delphi”). Ja lietotājs ir norādījis nepareizu paroli, ModalResult tiek iestatīts uz “mrAbort” (tas var būt jebkas, izņemot “mrNone”).

Iestatot rekvizīta ModalResult vērtību, veidlapa tiek aizvērta. Execute atgriež patieso vērtību, ja ModalResult ir vienāds ar “mrOk” (ja lietotājs ir ievadījis pareizo paroli).



Neveidojiet galveno veidlapu pirms pieteikšanās

Tagad jums tikai jāpārliecinās, vai galvenā veidlapa netiek izveidota, ja lietotājs nav norādījis pareizo paroli.

Lūk, kā vajadzētu izskatīties projekta pirmkodam:



|_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_| |_+_|

Ņemiet vērā lietojumu ja tad savādāk bloku, lai noteiktu, vai ir jāizveido galvenā veidlapa. Ja 'Execute' atgriež false, MainForm netiek izveidots un lietojumprogramma tiek pārtraukta, nesākoties.