Acum, că ne-am înființat DO nostru dialog deschiderea fișierelor, să ne cod. Dacă vă amintiți, descărcarea de text dintr-un fișier, am întâmplă atunci când apăsați „Read“, adică, pâine. Faceți dublu clic pe acest buton, și ajunge la codul de eveniment OnClick sale. Iată textul evenimentului:
Amintiți-vă, am testat mai întâi dacă există fișierul. și apoi, în funcție de rezultat, am făcut una sau cealaltă acțiune. Deci, cu dialogul nu au nevoie! În cazul în care utilizatorul selectează un fișier. nu există nici un motiv pentru a verifica - în cazul în care acesta există. Desigur, există, în caz contrar, utilizatorul nu a putut selecta. Vezi diferenta? Noul cod de eveniment va fi după cum urmează:
Acum, pentru un dialog TSaveDialog salva fișierul. Și aici știm cu toții deja - toate proprietățile metodei Execute și este exact cum ar fi în TOpenDialog. cu excepția faptului că textul din titlu de proprietate a unui alt. De aceea am dat o pereche de aceste dialoguri.
Modificarea numelui componentei în SD. Proprietăți DefaultExt Se filtrează și se ajustează în același mod ca și în DO. Orice altceva rămâne neschimbat. Acum trebuie să scrie cod pentru a salva fișierul. Acest lucru se face în „Salvați“ butonul evenimentului OnClick. Codul de eveniment nou, după cum urmează:
TColorDialog
TColorDialog - dialog de selectare a culorii. Este foarte simplu. Tot ce avem nevoie de el, și este proprietatea de culoare a metodei Executare. În cazul în care a avut loc un dialog, complexul va conține selecția de culoare de proprietate de culoare de către utilizator. Aceasta culoare poate fi atribuită la culoarea proprietatea unor alte componente. De exemplu, de culoare TMemo proprietatea componentei afișează culoarea de fundal a acestei componente. Eu, cu toate acestea, a spus că nu ar trebui să fie utilizate în culorile proiectului papagal, dar programul nostru de formare, pe lângă asta, vom instala doar culoarea pe care utilizatorul selectează. Prin urmare, pentru a forma un alt set TButton buton. Nume proprietate care redenumiți bColor. și în proprietatea Legendă, scrie culoare. Nu uitați să eliminați Ancorele de proprietate în securizarea marginea de sus și instalați fixare la partea de jos, așa cum am făcut cu celelalte butoane.
În continuare, avem nevoie pentru a instala componenta pe formularul TColorDialog:
Fig. 15.3. componentă TColorDialog
Această componentă. precum și toate celelalte componente ale non-vizuali, deci plasați oriunde doriți. Numele de dialog proprietate redenumi CD-ul. OnClick handler pentru butoane bColor sunt foarte simple:
TFontDialog
TFontDialog - dialog font. În acest dialog, utilizatorul poate alege modul în care fontul în sine. și efectele sale dimensiune, stil și culoare. A nu se confunda culoarea de fundal și culoarea fontului! text alb sau galben, de exemplu, ușor de citit pe un fundal albastru inchis sau negru. Trebuie să se stabilească forma unei astfel de componente:
Fig. 15.4. componentă TFontDialog
Nume proprietate pentru a redenumi FD componente. În codul, avem nevoie de proprietatea Font complexe. care va conține fontul. care a selectat utilizatorul. și că vom putea atribui proprietatea Font a celeilalte componente.
De asemenea, avem nevoie de un buton cu bFont numele și fontul textului în proprietatea Legendă. Nu uita butoanele anticipate la granița de jos a formularului. handler OnClick pentru un buton de genul:
Vă mulțumim pentru cursul minunat!
Munca independentă №2 compila modul MyCript.pas (Sistem de operare: Windows 7 x64, Lazarus 1.4 Win64) a emis o eroare în codul de asamblare
mycript.pas (54,5) Eroare: Asm: [împinge reg32] combinație de invalid opcode și operanzi
mycript.pas (95,5) Eroare: Asm: [pop reg32] combinație nevalidă de Opcode și operanzi
Am înțeles că cursul este gata pentru 32-bit sistem de operare, dar ce se întâmplă în cazul sistemelor pe 64 de biți?
Handlerele FileCreate elemente din meniu și FileOpen, precum și închiderea handler forma OnClose - în aceste trei proceduri conțin același cod
le înainte de a crea noul text>
în cazul în care începe apoi Memo1.Modified
// daca utilizatorul este de acord pentru a salva modificările:
dacă MessageDlg ( 'Save As'
„Fișierul curent a fost modificat. Salvați modificările?
mtConfirmation, [mbYes, mbNo, mbIgnore], 0) = mrYes apoi
FileSaveClick (Sender);
se încheie; // dacă
Dați-mi voie să vă întreb: nu ar fi mai bine să facă acest cod într-o procedură separată, de exemplu - sub forma unui eveniment handler OnCloseQuery? Din câte îmi amintesc de experiența Delphi, numesc această procedură în sine nu ar trebui să conducă la închiderea formularului. Acest lucru înseamnă că acesta poate fi utilizat în procedurile de curățare Memo1 și citirea dintr-un fișier. Sau în Lazăr nu poți face?