Az egér használata

Mivel nem ismerem a Turbo Pascal erre vonatkozó eredeti képességeit, egy gyors összefoglalóban jelzem hogy mi miként lett kivetelve, és mi hol érhető el. A dokumentációban részletesen leírtam mindent úgyis, példákkal.

Az egér pillanatnyi pozíciójának lekérdezése

function MouseX: integer;
function MouseY: integer;

Megadják az egér pillanatnyi pozícióját a grafikus képernyőn.

Az egéresemények

Az egér különféle műveletei kategóriákba vannak gyűjtve, pl. bal gomb lenyomása, mozgatás, dupla kattintás jobbgombbal, stb... Ezeket a Mouse... konstansok képviselik.

Minden egyes ilyen eseménynél ha történik valami azt a grafikus ablak megjegyzi, és a billentyűleütésekhez hasonlóan később lekérdezhetőek.

Így tehát:

azzal a különbséggel hogy első paraméterként mindig meg kell adni hogy melyik eseményre vagyunk kíváncsiak.

Egy dologban különbözik ezen két eljáráspár a billentyűzettől:

A billentyűzeten ha gyorsan begépelünk egy csomó betűt, azokat a ReadKey sorban veszi ki egy várólistából és nem hagy egyet sem veszni.

Az egérnél ez a várólistázás alapból erőforráskímélés miatt ki van kapcsolva, ezért ilyenkor csak a legutolsó kattintást tárazza be, és a korábbiak mindig elvesznek. A várólistát ha szükségünk van rá bekapcsolhatjuk a SetMouseQueueStatus eljárással, és akkor a billentyűzettel analóg módon működik.

Az egérkezelő eljárások

Harmadik alternatívaként megadható egy egérkezelő eljárás ami lefut minden egyes alkalommal ha az adott esemény bekövetkezik. Az ilyen eljárásokat a RegisterMouseHandler eljárással állíthatjuk be az eseményekhez.

Ezekről részletes információt a dokumentációban talál.