Utilizând controale activex în delphi

  • Ce este un control ActiveX?
  • Necesitatea de a utiliza ActiveX
  • Adăugați un control ActiveX în paleta de componente
Acest capitol este dedicat discutării utilizării controalelor ActiveX gata făcute de alți dezvoltatori. Vom analiza ce este un control ActiveX, în ce cazuri ar trebui să fie aplicat. Aflați cum să adăugați un control ActiveX în paleta de componente.
Ce este un control ActiveX?
Răspunsul la întrebarea din titlul acestei secțiuni poate fi diferit. Totul depinde de locul unde te uiți la ActiveX. Din punctul de vedere al dezvoltatorului, controlul ActiveX este ceva care are proprietăți, evenimente și metode (aproape ca orice altă componentă). Un dezvoltator de pe Delphi ar putea să nu aibă o idee despre ceea ce este o COM și, în același timp, să utilizeze cu succes controale ActiveX în aplicațiile lor.
Din perspectiva modelului component de obiecte (COM), controlul ActiveX este un server de automatizare implementat ca un DLL și executat în același proces ca și aplicația dvs. Controalele ActiveX permit editarea vizuală, adică puteți schimba valorile proprietăților, metodelor, scrieți instrucțiuni de manipulare a evenimentelor în același mod ca și în cazul componentelor de la VCL Delphi. În general, trebuie remarcat faptul că ideea tehnologiei ActiveX a fost parțial realizată cu mult timp în urmă. Înapoi în Microsoft Visual Basic, așa-numitele module de extensie VBX au fost utilizate pentru a dezvolta aplicații pe 16 biți. Dezvoltatorii au realizat rapid toate avantajele acestei tehnologii și au creat mii de module VBX. Ideea dezvoltării componentelor a fost plăcută de mulți, iar prin principiul său a început să creeze multe instrumente pentru dezvoltarea de aplicații, inclusiv Delphi.
Această tehnologie a evoluat treptat în tehnologia ActiveX pe 32 de biți.
Necesitatea de a utiliza ActiveX
S-ar putea să nu fi știut că ați folosit deja controale ActiveX când scrieți aplicațiile. De fapt, multe controale ActiveX care sunt înregistrate în registrul Windows sunt deja instalate în paleta de componente Delphi și nu arată diferit de componentele obișnuite Delphi. Nu ne vom ocupa de componentele care sunt controale. În schimb, să vedem când devine necesar să folosiți ActiveX.
De obicei, o astfel de necesitate apare atunci când doriți să extindeți funcționalitatea aplicației dvs. datorită capabilităților aplicațiilor deja înregistrate în sistem. De exemplu, dacă doriți să creați propriul browser Web, nu trebuie să începeți să îl scrieți din nou. Există un kernel grozav pentru browserul Web, folosit în Microsoft Internet Explorer (SHDOCVW.DLL). Sarcina ta aici este doar să conectați acest nucleu (care este un control ActiveX) la aplicația dvs. și să lucrați cu el.
Rețineți că în cea de-a cincea versiune a programului Delphi, a fost adăugată o fila Internet pe paleta de componente, care permite dezvoltatorului să creeze aplicații bazate pe kernelul Microsoft Internet Explorer.
Adăugați un control ActiveX în paleta de componente
Împreună cu Delphi, există mai multe componente ActiveX care au fost făcute de diferiți dezvoltatori, dar cel mai probabil va trebui să adăugați noi controale ActiveX în paleta de componente Delphi.
Instalarea controlului ActiveX solicitat începe cu selectarea elementului din meniul principal Componentă / Import ActiveX Control (Component / Import ActiveX control). Va apărea o casetă de dialog (vezi Figura 3.22), care conține informații despre toate controalele ActiveX care au fost înregistrate în registrul Windows.
Luați în considerare această casetă de dialog.
Partea de sus a ferestrei listează elementele ActiveX înregistrate în sistem. Lista de nume de clase afișează numele claselor care sunt disponibile în acest control. În Fig. 3.22 vedem că controlul ActiveX selectat are două clase încorporate TDHTMLEdit și TDHTMLSafe.
Paleta derulantă (pagină paletă) (tab-ul paletei) este utilizată pentru a selecta fila paletei componente pe care va fi plasat controlul ActiveX selectat. În mod implicit, aceasta este fila ActiveX.
Următoarele două câmpuri pentru introducerea numelui dir al unității și a căii de căutare sunt destinate, respectiv, specificării directorului în care va fi plasat modulul modulului ActiveX, precum și căii de căutare a acestui modul pentru compilatorul Delphi.

Utilizând controale activex în delphi

Fig. 3.22. Importați caseta de dialog Controale ActiveX
Selectați același control ActiveX ca cel prezentat în Fig. 3.22. Dacă nu aveți un astfel de element, luați oricare alta, dar în viitor vom descrie instalarea acestui control special.
După ce ați selectat acest control, faceți clic pe Instalați. Se va afișa fereastra Instalare (Figura 3.23).

remarcă
Un alt buton, Creare unitate, vă permite să creați un așa-numit fișier de prezentare (wrapper). Acest fișier este o descriere a bibliotecii de tip, conține o descriere a tuturor metodelor, evenimentelor și proprietăților care sunt în control. Conținutul acestui fișier este scris în Object Pascal. Numele fișierului este format din două părți: numele controlului ActiveX și linia _TLB.PAS. Dacă faceți clic pe butonul Creare unitate, creați doar acest fișier și apoi îl puteți vedea. Pentru a continua instalarea comenzii, trebuie să utilizați butonul Instalare. Această fereastră conține două file: în pachetul existent și în pachetul nou. Trebuie să alegeți pachetul pe care doriți să-l activați noul control.


remarcă
Este recomandat pentru controalele ActiveX să creați propriul pachet. Acest lucru va face ca utilizarea resurselor să fie mai eficientă. Nu vom crea un pachet nou pentru a simplifica descrierea instalării.

Adăugați controlul nostru la pachetul oferit de Delphi în mod implicit (dclusrSO.dpk).

Utilizând controale activex în delphi

Fig. 3.23. Fereastra pentru setarea comenzii în pachet
După ce faceți clic pe OK în fereastra Instalare, Delphi va compila pachetul dclusrSO.dpk. Ca urmare, conținutul ambalajului ar trebui să arate ca cel prezentat în Fig. 3.24.

Utilizând controale activex în delphi

Fig. 3.24. Conținutul pachetului dclusr5O.dpk după ce instalați noul control ActiveX
Acum mergeți la fila ActiveX a paletei componente și vedeți ce schimbări au avut loc acolo (Figura 3.25).


Fig. 3.25. Conținutul filei ActiveX
După cum puteți vedea, în fila au apărut icoane cu două componente noi: DHTMLEdit și DHTMLSafé.
Acum, puteți plasa oricare dintre aceste componente pe formularele dvs. și le puteți utiliza în același mod ca și cu orice alte componente Delphi. Astfel, folosind inspectorul de obiecte, puteți seta valorile proprietăților necesare, puteți scrie evenimente de manipulare a evenimentelor etc.
Pentru a dezinstala controlul ActiveX, trebuie să deschideți fișierul pachet în care a fost instalat ActiveX și să eliminați elementele inutile. După aceea, trebuie să recompilați pachetul. Aceste acțiuni vor elimina elementele din paleta de componente.

Articole similare