Organizarea cutiilor de dialog în proceduri și funcții delphi, limbi de programare

Să analizăm procedura și câteva funcții Delphi pentru a crea casete de dialog simple pentru afișarea mesajelor.

Aceasta este procedura ShowMessage. funcțiile MessageDlgPos și MessageDlg. ele afișează panoul de ieșire a mesajului (fereastră).







ShowMessage (const Msg: String) - această procedură afișează o fereastră cu un mesaj și butonul Ok. Titlul conține numele fișierului executabil, dacă opțiunea Titlu nu este specificată în opțiunile aplicației, dacă este specificată, atunci acesta va fi afișat. Șirul Msg va fi afișat ca text al mesajului.

MessageDlg (Const Msg: String; AType: TMsgDlgType; Abuttons: TMsgButtons; HelpCtx: Longint): Word - funcție afișează o casetă de dialog mesaj în centrul ecranului și permite utilizatorului să răspundă la mesaj. Mesajul este parametrul responsabil pentru ieșirea textului mesajului.

Tipul ferestrei de mesaj afișat depinde de parametrul AType, lista cu valori posibile după cum urmează:

  • mtErrore - pe fundalul cercului roșu există o cruce albă oblică, iar titlul ferestrei este Eroare;
  • mtWarning - pe fundalul triunghiului galben este un punct de exclamare negru - "!" iar titlul ferestrei este Avertizare;
  • Confirmarea mtConfirmarea pe un fundal de cerc alb este un albastru "?" iar titlul ferestrei este Confimation;
  • mtInformation - pe fondul cercului alb este litera albastră "i" și titlul ferestrei - Informații;
  • mtCustom - caseta de dialog nu conține o imagine, titlul arată numele fișierului executabil al aplicației sau titlul proprietății Application al aplicației.

AButtons este un parametru care stabilește un set de butoane pe o formă de dialog și poate lua combinații arbitrare de valori:

  • Butonul Yes - mbYes,
  • butonul Ok - mbOk,
  • butonul No - mbNo,
  • butonul Anulare este mbCancel,
  • butonul Abort - mbAbort,
  • butonul Retry - mbRetry,
  • buton Ignore - mbIgnore,
  • buton All - mbAll,
  • Butonul Ajutor - mbHelp.






O listă a butoanelor necesare, ar trebui să fie închisă în paranteze pătrate.

În plus față de enumerarea butoanelor individuale, este posibilă setarea combinațiilor de butoane utilizate frecvent valorile constantelor speciale:

  • butoanele OK și Cancel - mbOkCancel,
  • Butoanele Da, Nu și Anulare - mbYesNoCancel,
  • butoanele Anulare, Reîncercare și Ignorare - mbAbortRetryIgnore.

Aceste constante nu trebuie plasate în paranteze, deoarece sunt seturi predefinite.

Dacă nu declarăm o listă în paranteze, atunci în caseta de dialog nu vor exista butoane și utilizatorul va trebui să închidă fereastra cu butoanele de sistem Windows.

Când faceți clic pe orice buton (cu excepția Help) Rezultatul este returnat funcția MessageDlg (proprietatea ModalResult), iar forma este închisă. Rezultatul poate fi una din valorile din listă:

mrOk mrRetry mrNo
mrNone mrAbort mrYes
mrCancel mrIgnore mrAll

Parametrul HelpCtx specifică subiectul de ajutor. Acesta poate fi apelat în timpul afișării casetei de dialog cu tasta F1. În mod normal, acest parametru este setat la zero și nu se emite niciun ajutor.

Această funcție este utilă pentru crearea rapidă a aplicațiilor, dar are un mare dezavantaj în legendele și titlurile pe textul în limba engleză a butonului, astfel încât retragerea posturilor rusești un amestec de rusă și engleză.

Să creăm o aplicație simplă pentru a consolida materialul.

În formularul onCreate form handle, creați titlul programului nostru:

Pe formular, punem un buton simplu și creăm un handler pentru el:

Organizarea cutiilor de dialog în proceduri și funcții delphi, limbi de programare

Rulați aplicația făcând clic pe buton. Înainte de a vedea caseta de dialog afișată în partea stângă. Făcând clic pe butoanele OK și Cancel, primim două mesaje diferite care ne informează despre butonul pe care l-am selectat.

MessageDlgPos (Const pentru SMS: String; Atype: AMsgDlgType; Abuttons: TMsgDlgButtons; HelpCtx: Longint; X, Y: Integer): Word - această funcție este diferită de MessageDlg, faptul că are doi parametri X și Y, sunt stabilirea unei poziții de pe ecran.

Linia de fund: am discutat procedura ShowMessage și funcțiile MessageDlg și MessageDlgPos. Cu ajutorul acestora am învățat cum să afișăm informații pentru informațiile despre utilizatori.

Comunicați cu mine






Trimiteți-le prietenilor: