Pagina 36 din 40
TPopupMenu
Textul conținut în elementul de meniu este determinat de proprietate:
În plus față de principal, aceasta poartă două sarcini suplimentare. În primul rând, dacă există o ampersand ('') în linie, atunci, împreună cu simbolul care o urmează, este un accelerator. De exemplu, pentru linia "Fișier", apăsarea + înseamnă selectarea acestui element. În al doilea rând, dacă textul constă dintr-un caracter '-', atunci acest element servește ca un delimiter în meniu (are stilul MFJSEPARATOR);
În plus față de accelerator, se poate descrie o altă combinație de taste, apăsând care este echivalentă cu selectarea elementului. Ar trebui să fie conținută în proprietate: •
Modul de a selecta un element de meniu este să faceți clic pe mouse, să faceți clic pe elementul focalizat, să apăsați combinația de accelerație sau combinație fierbinte, în cele din urmă să apelați metoda
duce la un eveniment:
Componenta TMenuItem poate distinge numai acest eveniment, cu care ar trebui asociate acțiunile pentru care ați introdus acest element din meniu. Acest eveniment este perceput de acele elemente de meniu care sunt active în prezent, ceea ce înseamnă - setat la proprietatea True:
Dacă Enabled este Fals, elementul este redat în gri și nu acceptă mesaje.
Deseori, elementele de meniu sunt folosite pentru comutarea oricăror moduri de funcționare ale programului. În acest caz, acestea pot fi marcate cu un "bifați" înainte de începerea textului. proprietate
este responsabil pentru faptul că acest element este marcat.
Dacă există prea multe comenzi în meniu, atunci locația lor una sub cealaltă poate provoca neplăceri grave utilizatorului. proprietate
este conceput pentru a rezolva această problemă. Dacă este setat la mbBreak, comenzile de meniu care încep cu aceasta se află în coloana nouă lângă cea anterioară (apartenența lor nu se schimbă). Dacă este mbBarBreak, coloanele sunt separate printr-o linie verticală. În Delphi, toate elementele din meniul TMenuItem pot fi simple comenzi sau submeniuri care au propria lor listă de articole. În cazul în care componenta nu are submeniuri și nu există elemente, următoarea proprietate are sens pentru aceasta:
Înainte de scrierea meniului, a fost necesar să se inventeze și să se atribuie un identificator unic fiecărui element - adică codul de comandă real care a fost trimis ca parametru de mesaj WM.COMMAND. Acum, această sarcină este încredințată Delphi - programatorul nu numai că nu determină, dar poate să nu știe codul comenzii asociate acestui element de meniu. Sistemul va selecta automat o valoare unică și va atribui această valoare proprietății Command. Modificarea nu este permisă.
Interpretarea mesajelor din meniu este ascunsă de programator. Sistemul însuși determină ce element este selectat și îl sună pe handler-ul evenimentului OnClick.
Dacă aveți nevoie de un cod de comandă pentru anumite scopuri, puteți utiliza proprietatea de mai sus (a se vedea exemplul din descrierea componentei TMenu).
Dacă există elemente componente pentru copii TMenuItem, acesta este un sub-meniu are statut MF_POPUP și meniul Windows ocupa o funcție de citire prin:
Elementele din meniu sunt legate ierarhic. Metodele și proprietățile pentru lucrul cu elementele meniului copil sunt enumerate în tabel.
(Ro) proprietate Parent: TMenuItem;
Conține un indicator la submeniul părinte.
Dacă elementul de meniu este în focalizare, clicul va apela sistemul de ajutor cu contextul specificat în proprietate:
Se folosește atunci când sunt conectate mai multe meniuri. Pentru o explicație detaliată a scopului, consultați descrierea componentei TMainMenu.
Construiți proiectul Pentru a compila exemplul, aveți nevoie de mediul de dezvoltare Delphi 6 sau 7. Fișierul proiectului este TestVK.dpr Deschideți acest fișier (de exemplu, făcând dublu clic pe mouse-ul din Explorer). Apăsați Ctrl-F9 (sau elementul de meniu Project-Compile). Dacă totul a mers bine, acesta va fi gata în același folder.
1. Selectați din baza de date numai acele câmpuri de care avem nevoie de formular: selectați * din. poate încărca foarte greu atât serverul, cât și computerul utilizatorului, mai ales dacă tabelele conțin câmpuri de caractere mari sau binare. De exemplu, de ce alegeți un câmp cu o fotografie a angajaților atunci când este necesar.
Adesea sa întâlnit la punctele de vedere ale forumurilor că fluxul nu este necesar deloc, orice program poate fi scris astfel încât să funcționeze bine și fără ele. Desigur, dacă nu faceți ceva mai grav, "Hello World" este adevărat, dar dacă dobândiți treptat experiență, mai devreme sau mai târziu, orice programator începător.
Sigur, fiecare dintre noi cel puțin o dată în practică, dar sa întâlnit cu codul cum ar fi: TForm1 = clasa (TForm) procedură privată MyCoolHandler (var Mesaj: TMessage); mesaj WM_USER; sfarsit public; procedura TForm1.MyCoolHandler (var Mesaj: TMessage); incepe Message.Result: = 32767;