5.2 Butoane și butoane de control BitBtn
Cel mai simplu și cel mai frecvent utilizat buton este butonul (vezi Figura 5.1 în colțul din stânga sus al formularului) situat pe pagina bibliotecii Standard. Butonul BitBtn este utilizat mai rar (vezi Figura 5.1 sub butonul Buton), caracterizată, mai presus de toate, de capacitatea de a afișa o imagine pe suprafața sa. Cele mai multe proprietăți, metode și evenimente pentru aceste tipuri de butoane sunt aceleași.
Proprietatea principală a butonului este proprietatea Caption. În butoanele, puteți oferi accesul la tastele de acces accelerat, subliniind unul dintre simbolurile pentru aceasta. Înainte de simbolul care corespunde cheii de acces accelerat, se introduce un simbol "" ampersand. Acest simbol nu apare în inscripție, iar următorul caracter după ce apare subliniat. Apoi, utilizatorul poate apăsa tasta Alt oricând împreună cu tasta simbol selectată, în loc să apese pe buton.
De exemplu, dacă aplicația dvs. are un buton pentru efectuarea unei operații, puteți seta proprietatea Caption la " Fugiți. " Pe buton această etichetă va avea formularul "Executați". Și dacă utilizatorul apasă tasta Alt-B. atunci aceasta va fi echivalentă cu clic pe buton.
Evenimentul principal al oricărui buton este OnClick. care apare când faceți clic pe el. Este în mânuitorul acestui eveniment operatorii care sunt scrise care trebuie executate atunci când utilizatorul face clic pe buton. În plus, există o serie de evenimente legate de diferitele manipulări ale tastelor și butoanelor mouse-ului.
Proprietatea Anulați. dacă este setat la true. determină faptul că apăsarea tastei Esc de către utilizator va fi echivalentă cu apăsarea acestui buton. Este recomandabil să setați această proprietate la true pentru butoanele "Anulare" din diferite casete de dialog, astfel încât să puteți ieși din dialog făcând clic pe acest buton sau apăsând tasta Esc.
Proprietatea implicită. dacă este setat la true. determină faptul că apăsarea tastei Enter a utilizatorului va fi echivalentă cu apăsarea acestui buton, chiar dacă acest buton nu este focalizat în acest moment. Cu toate acestea, dacă în momentul apăsării tastei Enter în focalizare există un alt buton, atunci butonul focalizat va funcționa la fel.
O altă proprietate - ModalResult este folosită în forme modale, a căror considerație este dincolo de scopul acestei cărți. În aplicațiile normale, valoarea acestei proprietăți trebuie să fie egală cu mrNone.
Printre metodele inerente butoanelor, are sens să menționăm una - clic. Efectuarea această metodă este echivalentă cu clic pe butonul, și anume solicită evenimentul OnClick unui buton. Acest lucru poate fi folosit pentru a duplica alte acțiuni ale utilizatorului click pe un buton. De exemplu, să presupunem că doriți să atunci când utilizatorul face clic pe butonul cu simbolul „C“ sau „off“, în orice moment pentru a lucra cu aplicația efectuează operațiunile prevăzute în butonul de tratare a evenimentului OnClick Button1. Din moment ce nu se știe care componenta va fi în centrul atenției la momentul acestui eveniment, este necesar să-l intercepteze la nivelul formei. O astfel de interceptare este realizată prin setarea proprietății mucegai KeyPreview la true. Apoi, în tratare a evenimentului, puteți scrie operatorul formular onkeypress
Dacă utilizatorul introduce un caracter "C" sau "c", rezultatul va fi butonul de preluare a butonului Button1.
Cele de mai sus se aplică în mod egal buton. și BitBtn. Luați în considerare acum dispune de un buton cu o pictogramă BitBtn. Imaginea de pe acest buton pentru a seta proprietatea Glyph. Când faceți clic pe butonul din proprietățile puncte de suspensie linie Glyph în Object Inspector numit fereastra prezentată în Fig. 5.2. Făcând clic pe butonul Load te pentru a reveni la fereastra normală fișier imagine de deschidere, și puteți selecta fișierul bitmap .bmp. care conține imaginea dorită. În special, Delphi vine cu o serie de imagini pentru butoane. Acestea sunt situate în directorul \ Images \ butoanele și director el Imagini în Delphi 5 și 4 se află în directorul \ Program Files \ fișiere comune \ Borland partajate, la fel ca în alte versiuni de Delphi - în fișierele de program directorul \ \ Borland \ Delfi.
După "/> OK și imaginea selectată apare pe butonul din partea stângă a etichetei.
Fișierul imagine pentru un buton poate conține până la patru imagini miniatură de dimensiune 16x16. Stânga corespunde cu butonul apăsat. Al doilea la stânga corespunde unui buton indisponibil când proprietatea Enabled este falsă. A treia imagine stânga este utilizată atunci când utilizatorul apasă butonul când este pornit. A patra imagine din stânga este utilizată în butoanele cu o blocare SpeedButton. care va fi descris mai târziu, pentru imaginea butonului în starea presată. Majoritatea imaginilor pentru butoane folosesc două pictograme. Puteți vedea numărul de pictograme din proprietatea butonului NumGlyphs. care după încărcarea imaginii vă va afișa numărul de pictograme din ea.
Localizare imagini și inscripții pe butonul este determinată de proprietățile Marja. Aspect și Spacing. În cazul în care marja de proprietate este -1 (implicit), imaginea și o inscripție plasată în centrul butonului. Poziția imaginii, dar în ceea ce privește eticheta este determinată de proprietate Aspect. care poate lua valorile: blGlyphLeft (stânga, această valoare este implicit), blGlyphRight (dreapta), blGlyphTor (sus), blGlyphBottom (de jos). Dacă Marja> 0. Apoi, în funcție de valoarea și semna imaginea Layout mutat într-o anumită margine a unui buton, care pleacă de la ea de numărul de pixeli, marja de valoare predeterminată.
Proprietatea Spacing specifică numărul de pixeli care separă imaginea și inscripția de suprafața butonului. În mod implicit, Distanță = 4. Dacă setați Spacing = 0. imaginea și inscripția vor fi plasate una lângă cealaltă. Dacă setați Spacing = -1. atunci textul apare în mijloc între imagine și marginea butonului.
O altă proprietate BitBtn, proprietatea Kind, determină tipul butonului. În mod implicit, valoarea acestei proprietăți este bkCustom - personalizată. Dar puteți seta și alte tipuri predefinite: bkOK. bkCancel. bkHelp. bkYes. bkNo. bkClose. bkAbort. bkRetry. bkIgnore. bkAll. În aceste tipuri, deja s-au făcut inscripții corespunzătoare, au fost introduse icoane și au fost specificate câteva alte proprietăți. De obicei, este mai bine să nu le folosiți. În primul rând, inscripțiile trebuie încă să fie traduse în limba rusă. În al doilea rând, desenele predefinite sunt de obicei în afara stilului general al unei aplicații particulare. Și, cel mai important, predeterminarea unor proprietăți pe care nu le-ați luat în considerare poate duce uneori la rezultate ciudate. Este mai bine să utilizați butoane personalizate și cele mai multe instalați toate proprietățile necesare în ele.