
A mellékelt példaprogram megnyitása előtt a GetCaption.pas-ban lévő komponenst telepítenie kell a Delphi alá. Ehhez válassza a Component - Install Component menüpontot.
A komponens folyamatosan nyomon követi az egérkurzor pozícióját. Amikor meg szeretnénk tudni a kurzor alatt elhelyezkedő objektum Caption tulajdonságának értékét, nincs más dolgunk, mint meghívni a komponens GetCaption metódusát.
function GetCaption: String;
Ha az objektum rendelkezik leolvasható Caption értékkel, akkor a függvény azt adja vissza eredményül. Ha az objektum nem rendelkezik leolvasható Caption értékkel, akkor a függvény visszatérési értéke üres sztring.
Komponensünket a TComponent osztályból származtatjuk.
Az egérkurzor aktuális pozícióját a TMouse osztály CursorPos függvénye segítségével bármikor lekérdezhetjük. Ehhez létre kell hoznunk egy példányt a TMouse osztályból, ez lesz az FMouse objektum.
Az objektumok Caption értékét a GetCaption függvény kérdezi le.
Első lépésként azonosítanunk kell a kurzor alatt elhelyezkedő objektumot, és meg kell határoznunk a hozzá tartozó azonosítót. Ezt a WindowFromPoint API függvény segítségével tehetjük meg.
Handle:=WindowFromPoint(FMouse.CursorPos);
Ha ismerjük az azonosítót, akkor lekérdezhetjük az objektumhoz tartozó szöveg hosszát.
TextLength:=SendMessage(Handle,WM_GETTEXTLENGTH,0,0);
Miután tudjuk a szöveg hosszát, egy PChar típusú változóba lekérdezhetjük magát a szöveget is.
SendMessage(Handle,WM_GETTEXT,TextLength+1,Integer(s));