3.3.2 Afișarea textului în etichetele componentelor Label, StaticText și Panel
Pentru a afișa diferitele etichete pe formular, componentele etichetei sunt utilizate în principal. StaticText (apărut numai în Delphi 3) și Panel. Primele două dintre aceste componente sunt etichete special concepute pentru a afișa texte. Scopul principal al panoului este diferit: aspectul componentelor în fereastra formei. Cu toate acestea, panoul poate fi de asemenea utilizat pentru a emite texte.
Exemple de ieșire a textului în componente sunt prezentate în Fig. 3.4.
Textele afișate în componentele listate sunt determinate de valoarea proprietății proprietății. Poate fi instalat în timpul procesului de proiectare sau îl puteți seta și modifica programabil în timpul rulării. De exemplu:
Dacă doriți să afișați informații numerice, puteți utiliza funcțiile FloatToStr și IntToStr. traducând în consecință numerele cu o virgulă plutitoare și numere întregi într-un șir. Pentru a forma un text format din mai multe fragmente, puteți utiliza operația "+", care pentru linii înseamnă lipirea (concatenarea). De exemplu, dacă programul are o variabilă întregă I. Afișarea numărului de angajați ai unei organizații, puteți afișa informații despre acest lucru în eticheta Label1:
În toate componentele, culoarea de fundal este determinată de proprietatea Color. iar culoarea legendei este proprietatea sub-culoare a proprietății Font. De exemplu, în majoritatea etichetelor (cu excepția celei de sus) din Fig. 3.4 a și în etichetele din dreapta din Fig. 3.4 b setați culoarea de fundal pentru clWhite - alb. Dacă culoarea nu este setată în mod specific, atunci culoarea de fundal fuzionează de obicei cu culoarea containerului care conține eticheta, astfel încât fundalul nu este pur și simplu vizibil.
Pentru eticheta de etichete, culoarea și fontul sunt singurele elemente disponibile pentru etichetă. Elementele StaticText și Panel au, de asemenea, proprietatea BorderStyle. definirea cadrului de text - frontieră. În Fig. 3.4 b puteți vedea efectul frontierei asupra aspectului etichetei StaticText. Cu stilul sbsNone, eticheta StaticText nu diferă în ceea ce privește aspectul de pe eticheta Etichetă. Probabil, dacă utilizați bordajul, atunci stilul cel mai plăcut este sbsSunken.
Fig. 3.4
Exemple de ieșire de text în etichetele componente (a), StaticText (b) și Panel (c)
Componenta „/> Plasarea tuturor componentelor luate în considerare în forma determinată parțial de proprietățile Torr (coordonate margine superioară), stânga (coordonata marginii din stânga), înălțime (înălțime), Width (lățime). Există, de asemenea, proprietăți care definesc resize componente atunci când schimbă utilizatorul în timpul executării ferestrei aplicației este redimensionat Aceste proprietati generale ale tuturor componentelor de ferestre :. align (aliniere a componentei în partea de sus, stânga, dreapta, sau de jos a containerului pe toată suprafața sa de client), Ancore (componente terțe părți de legare la părțile laterale ale bolțului eynera), constrângeri (reducerea valorilor nominale modificări dimensionale). Rețineți că folosirea ancorelor proprietate a componentei de legare simultană pe laturile opuse ale containerului va duce la întindere sau compresiune a componentei atunci când utilizatorul redimensionarea ferestrei. În acest caz, etichetele, în unele cazuri, există probleme legate de mișcarea etichetă (dacă, de exemplu, sunt centrate). pentru a evita aceste probleme, este necesară în procesarea formularelor de eveniment OnResize introduce operatorii redraws componente Revopsiți metoda. de exemplu:
Etichetele și etichetele StaticText sunt de asemenea definite de proprietatea AutoSize. Dacă această proprietate este setată la true. dimensiunile verticale și orizontale ale componentei sunt determinate de mărimea inscripției. Dacă dimensiunea automată este falsă. apoi alinierea textului în cadrul componentei este determinată de proprietatea Alignment. care vă permite să aliniați textul spre stânga, marginea dreaptă sau spre centrul zonei clientului etichetei. Panoul panoului are, de asemenea, proprietatea AutoSize. dar nu se referă la mărimea legendei. Cu toate acestea, proprietatea Alignment Alignment (Aliniere Aliniere) funcționează și pentru panou.
Eticheta de etichetă are o proprietate Wordwrap - permisiunea de a transfera cuvinte de o inscripție lungă care depășește lungimea componentei pe o linie nouă. Pentru ca acest lucru să se întâmple, trebuie să setați proprietatea WordWrap la true. Autosize proprietate false (la dimensiunea componentei nu este determinată de mărimea literelor) și să facă înălțimea componentei, astfel încât acesta poate găzdui câteva linii (vezi. Exemplu marcaj din dreapta jos în Fig. 3.4 a). Dacă WordWrap nu este setat la true când AutoSize este falsă. apoi un text lung care nu se potrivește în cadrul etichetei este pur și simplu trunchiat (a se vedea exemplul etichetei inferioare din stânga din Figura 3.4a).
În eticheta StaticText, textul lung este efectuat automat dacă valoarea AutoSize este setată la false și dimensiunea componentei este suficientă pentru a acoperi mai multe linii. Pentru ca StaticText să efectueze transferul atunci când utilizatorul modifică dimensiunile ferestrei, trebuie să efectuați reparația de mai sus a componentei utilizând metoda Repaint în procesul de tratare a evenimentului OnResize.
În panoul de plasare a inscripției în mai multe rânduri este imposibil.
Puteți marca încă o proprietate a etichetelor Label și StaticText. transformându-le într-un fel de elemente de control. Această proprietate a FocusControl este o componentă concentrată. În cazul în care proprietatea etichetă Legendă plasate în fața uneia dintre simbolurile simbolul ampersand „“ pe care caracterul înainte de care a pus un ampersand este afișată în eticheta eticheta subliniat (ampersand in sine nu apare). Dacă vă referiți apoi la proprietatea etichetei FocusControl. apoi din lista derulantă puteți selecta elementul la care se va comuta focalizarea în cazul în care utilizatorul apasă tasta de acces accelerată: tasta Alt + simbolul subliniat. Astfel de taste de acces accelerate sunt furnizate în elementele de comandă: secțiunile de meniu (vezi secțiunea 6.1) și butoanele (vezi secțiunea 5.2). Datorită proprietății FocusControl, etichetele pot furniza alte elemente, de exemplu, editarea ferestrelor (vezi secțiunea 3.3.3) cu taste de acces accelerate, în care nu sunt furnizate astfel de taste. Numai pentru ca tastele de acces accelerate din etichete să funcționeze, trebuie să setați proprietatea ShowAccelChar a acestor etichete la true.
Pentru a afișa informații de text și chiar și cu capacitatea suplimentară de a defila prin texte lungi, puteți utiliza ferestrele de editare Editare și MaskEdit în modul Readonly.