Folosind Sugestiile Delphi

În sistemul de operare Windows, când poziționați indicatorul mouse-ului peste o pictogramă, apare o pictogramă. Prezența unui indiciu ajută utilizatorul final să înțeleagă funcționalitatea aplicației.







Vom plasa componenta Edit pe formular și vom scrie în proprietatea Sugestii "Aceasta este componenta noastră, putem scrie totul aici". Setați proprietatea ShowHint la TRUE. Rulați proiectul cu tasta F9. Țineți mouse-ul pentru un moment peste componenta Editare și vedeți indiciul nostru pe fundalul galben, ca în figură.

Folosind Sugestiile Delphi
Și cum să facă fundalul sugestiilor diferite,
vă întrebați, este foarte simplu. Pentru aceasta, să luăm în considerare următorul exemplu.

Așezați componentele după cum urmează, ca în figură. Proprietatea formularului ShowHint este setată la TRUE. Să vedem că pentru toate componentele proprietatea ParentShowHint ar fi TRUE.

Acum, pentru fiecare componentă, scrieți un indiciu precum "Aceasta este o componentă Editare" (pentru fiecare componentă, tooltip-ul ar trebui să fie unul propriu). Faceți dublu clic pe formular, mergeți la formularul handler Creați și introduceți următoarele linii:

procedura TForm1.FormCreate (expeditor: TObject);

Button1.Hint: = 'Prima linie' + # 13 + 'A doua linie' + # 13 + 'A treia linie';

Prima linie stabilește Button1 un prompt nou, dacă un indiciu a fost specificat anterior în Inspectorul de obiecte, acesta este ignorat. Simbolul # 13 rupe linia promptă în mai multe "etaje". Proprietatea HintColor specifică fundalul solicitărilor. Proprietatea HintPause este timpul pentru afișarea promptului în milisecunde (unde 1000 este o secundă), iar proprietatea HintHidePause afișează timpul de prompt.

Numărul cursului 20. Creați un screensaver, ferestre de informații.

Luați în considerare o modalitate simplă de a crea un ecran de pornire.

În primul rând, trebuie să pregătiți imaginea în sine, pe care doriți să o vedeți ca un economizor de ecran. De exemplu, să luăm o imagine de la Borland Delphi 5.

Deci, procedura este după cum urmează:

1. Creați o nouă formă Fișier> Nou> Formă - Delphi pentru Win322.

2. Pentru comoditate, să o sun și să ceară IntroForm BorderStyle proprietate bsNone (Dispare antet și forme de cadru), valoarea proprietății Poziția poDesktopCenter (fereastra va apărea în centrul desktop).

3. Plasați componenta TImage pe formular (fila Suplimentare) și încărcați imaginea utilizând proprietatea Imagine.

4. Așezați componenta TTimer pe formular (fila Sistem), setați proprietatea Interval la 3000 (3 secunde), iar în procesorul OnTimer scrie:

5. Apoi deschideți fișierul proiectului: Proiect> Vizualizați sursa și efectuați modificările conform exemplului de mai jos:

Formulare,
Unitatea 1 în "Unit1.pas",
Unitatea 2 în "Unit2.pas";

începe
Application.Initialize;
IntroForm: = TIntroForm.Create (Cerere);
IntroForm.Show;
IntroForm.Update;

în timp ce IntroForm.Timer1.Enabled face
Application.ProcessMessages;

Application.CreateForm (TForm1, Form1);
IntroForm.Hide;
IntroForm.Free;
Application.Run;
end.

2. Fereastra de informații din aplicația Delphi

Pentru a ajuta programatorul există un șablon în Delphi sau puteți crea o astfel de fereastră. Pentru a utiliza șablonul, trebuie să selectați șablonul Cutie Despre din pagina Formulare din spațiul de stocare a obiectelor (Fișier -> Nou -> Altele).

Folosind Sugestiile Delphi
Ca rezultat, un formular cu titlul Despre și cu numele DespreBox va fi adăugat la cerere.

Folosind Sugestiile Delphi
Formularul va conține un panou (componenta Panou) și un buton cu poziția OK pentru a închide fereastra. Pentru butonul, manipularea evenimentului nu este necesară, deoarece proprietatea ModalResult a butonului este setată la mrOK și astfel atunci când este apăsat, fereastra cu informații va fi închisă.







Panoul (componenta Panou) conține patru componente de etichetă pentru afișarea informațiilor despre produsul software și dezvoltatorii săi. Componenta Imagine este destinată afișării oricărui desen, de exemplu logo-ul producătorului programului.

Titlul formularului "About About" poate fi schimbat, de asemenea, dacă este necesar. Dacă aveți nevoie de alte elemente din formular, le puteți oricând să le adăugați sau, dacă este necesar, să le ștergeți în mod inutil.

Când lucrați cu programul, fereastra de informații este de obicei afișată utilizând meniul principal în modul modal. Pentru a continua lucrul cu programul, fereastra de informații trebuie închisă.

Exemplu de a apela fereastra de informații din meniu va fi după cum urmează:

procedura TForm1.N1Click (expeditor: TObject);

Curs № 21. Conceptul și scopul bibliotecilor DLL. Crearea de biblioteci DLL. Utilizarea bibliotecilor DLL.

1. Conceptul și scopul bibliotecilor DLL.

O bibliotecă care poate fi încărcată dinamic este o bibliotecă de rutine care este încărcată în RAM și conectată la programul care rulează în timpul funcționării (și nu la momentul compilării și asamblării). Fișierele bibliotecilor încărcate dinamic în mediul Windows au, de obicei, o extensie .dll (din Biblioteca Română Dynamic-Link).

Mai multe programe pot folosi o bibliotecă partajată dinamic încărcată. În același timp, sistemul de operare încarcă în memorie doar o singură copie a bibliotecii și oferă acces partajat la acesta din toate programele. În plus, astfel de biblioteci pot fi încărcate și descărcate dinamic din RAM în cursul programului, eliberând resursele de sistem pentru alte sarcini.

Una dintre cele mai importante sarcini ale bibliotecilor încărcate dinamic este interacțiunea subprogramelor scrise în diferite limbi de programare. De exemplu, puteți utiliza în mod liber biblioteci încărcate dinamic dezvoltate în alte sisteme de programare folosind C și C ++ în mediul Delphi. Reversul este de asemenea adevărat: bibliotecile încărcate dinamic create în mediul Delphi pot fi conectate la programe în alte limbi de programare.

Structura textului sursă al bibliotecii este similară cu codul sursă al programului, cu excepția faptului că textul bibliotecii începe cu biblioteca de cuvinte cheie, nu cu programul de cuvinte. De exemplu:

După antet există secțiuni pentru conectarea modulelor, descrieri ale constantelor, tipuri de date, variabile și descrieri ale procedurilor și funcțiilor. Procedurile și funcțiile sunt principalul lucru care ar trebui să fie într-o bibliotecă încărcată dinamic, deoarece numai ele pot fi exportate.

Dacă unele proceduri sunt declarate în corpul bibliotecii,

procedura BubleSort (var Arr: matrice de Integer); procedura QuickSort (var Arr: matrice de Integer);

atunci aceasta nu înseamnă că vor deveni automat disponibile pentru un apel din afară. Pentru a rezolva acest lucru, trebuie să puneți numele procedurilor în secțiunea exporturi speciale, de exemplu: exportul BubleSort, QuickSort;

Procedurile și funcțiile enumerate în secțiunea exporturi sunt separate printr-o virgulă iar la sfârșitul întregii secțiuni este plasată o punct și virgulă. Secțiunile exporturilor pot fi mai multe și pot fi plasate în mod arbitrar în program.

Mai jos este un exemplu de text sursă al celei mai simple biblioteci SortLib încărcate dinamic. Acesta conține o singură procedură BubleSort, care sortează o serie de numere întregi folosind metoda "bubble":

biblioteca SortLib; procedura BubleSort (var Arr: matrice de Integer); var I, J, T: Integer; începe pentru I: = Low (Arr) la High (Arr) - 1 do pentru J: = I + 1 la High (Arr) fac dacă Arr [I]> Arr [J] apoi începe T: = Arr [I]; Arr [I]: = Arr [J]; Arr [J]: = T; se încheie; se încheie; exporturile BubleSort; începe sfârșitul.

Textul sursă al bibliotecii încărcate dinamic se termină cu blocul de început. end, în care puteți introduce orice operatori pentru a pregăti biblioteca pentru lucru. Aceste instrucțiuni sunt executate în momentul în care biblioteca este încărcată de programul principal. Biblioteca noastră simplă SortLib nu necesită pregătire pentru lucru, deci blocul de operatori este gol.

Există două moduri de import, diferite în ceea ce privește confortul și flexibilitatea programării:

§ importul static (furnizat de directiva externă a compilatorului);

§ import dinamic (furnizat de funcțiile LoadLibrary și GetProcAddress).

Importurile statice sunt mai convenabile și mai dinamice - mai flexibile.

În cazul importului static, toate acțiunile de încărcare și conectare a bibliotecii sunt efectuate automat de sistemul de operare la începutul programului principal. Pentru a utiliza importul static, este suficient să declarați procedurile și funcțiile bibliotecii ca programe externe în program. Acest lucru se face folosind directiva externă. de exemplu:

procedura BubleSortIntegers (var Arr: matrice de Integer); stdcall; externe "SortLib.dll"; procedura QuickSortIntegers (var Arr: matrice de Integer); stdcall; externe "SortLib.dll";

procedura BubleSort (var Arr: matrice de Integer); stdcall; numele extern 'SortLib.dll' 'BubleSortIntegers'; procedura QuickSort (var Arr: matrice de Integer); stdcall; numele extern "SortLib.dll" "QuickSortIntegers";

Această metodă se numește import static.

Extensia fișierului care conține DLL nu poate fi specificată - în mod implicit, fișierele * .DLL și * .EXE sunt implicite. Dacă fișierul are o altă extensie (de exemplu, COMPLIB.DCL în Delphi), sau în cazul în care o determinare dinamică DLL și funcții importate (de exemplu, programul funcționează cu o varietate de formate grafice, și pentru fiecare dintre ele există un DLL separat.), Apoi soluția Astfel de probleme pot fi adresate direct API-ului Windows folosind așa-numitul import dinamic:







Articole similare

Trimiteți-le prietenilor: