![]() |
![]() |
| |||||
EseményekA StarOffice párbeszédablakai és űrlapjai olyan eseményorientált programozási modellen alapulnak, amelyben eseménykezelőket rendelhetünk a vezérlőelemekhez. Az eseménykezelő adott művelet bekövetkezésekor előre megadott eljárást futtat, még akkor is, ha a művelet egy másik esemény. Az eseménykezeléssel dokumentumokat szerkeszthetünk, adatbázisokat nyithatunk meg, vagy akár más vezérlőelemeket is elérhetünk. A StarOffice vezérlőelemei különböző típusú és különböző helyzetekben indítható eseményeket ismernek fel. Ezek az események a következő négy csoportba sorolhatók:
Az eseményekkel való munkánál ügyeljünk arra, hogy a StarOffice fejlesztési környezetben létrehozzuk a kapcsolódó párbeszédablakot, és hogy az tartalmazza a szükséges vezérlőelemeket és dokumentumokat (ha az eseményeket űrlapra alkalmazzuk). ![]() Az előző ábrán a StarOffice Basic fejlesztési környezete látható egy két listát tartalmazó párbeszédablakkal. A két lista között elhelyezett gombokkal az adatok áthelyezhetők az egyik listáról a másikra. Ha az elrendezést meg szeretnénk jeleníteni a képernyőn, létre kell hozni a megfelelő StarOffice Basic eljárásokat, hogy azokat az eseménykezelők hívhassák. Bár ezeket az eljárásokat bármelyik modulban használhatjuk, célszerűbb használatukat két modulra korlátozni. A kód egyszerűen olvasható és érthető lesz, ha beszédes nevet adunk ezeknek az eljárásoknak. A makrókból közvetlenül egy általános programeljárásra való ugrás általában nehezen érthető kódot eredményez. Ehelyett a kód karbantartásának és hibakeresésének egyszerűsítéséhez érdemes egy másik eljárást is létrehozni, amely az eseménykezelés belépési pontjaként szolgál. Ez még akkor is hasznos, ha kizárólag a céleljárás hívását tartalmazza. A következő példa kódja egy bejegyzést helyez át a párbeszédablak bal oldali listájáról a jobb oldaliba.
Ha ezt az eljárást a StarOffice Basic környezetben hoztuk létre, a párbeszédablak-szerkesztő tulajdonságablakában a kívánt eseményhez rendelhetjük. ![]() A hozzárendelést végrehajtó párbeszédablak a StarOffice Basic összes eljárását felsorolja. Eljárás eseményhez rendeléséhez jelöljük ki az eljárást, majd kattintsunk a Hozzárendelés gombra. ParaméterekAdott esemény előfordulása nem mindig elegendő a megfelelő válasz megadásához, ehhez további információra is szükség lehet. Például egy egérkattintás feldolgozásához ismerni kell a képernyő azon helyét, ahol az egérgombot megnyomták. A StarOffice Basic rendszerben objektumparamétereket használhatunk, hogy az eljárás számára további információval szolgáljunk egy eseményről, például:
Az Event objektum felépítési pontossága és tulajdonságai az eljáráshívás által indított esemény típusától függenek. A következő részek részletesen bemutatják az eseménytípusokat. Az esemény típusától függetlenül valamennyi objektum hozzáférést biztosít a megfelelő vezérlőelemhez és modelljéhez. A vezérlőelem az
míg modellje az
segítségével érhető el. Ezek a tulajdonságok esemény indításához használhatók egy eseménykezelőn belül. EgéreseményekA StarOffice Basic a következő egéreseményeket ismeri fel:
A kapcsolódó eseményobjektumok felépítését a com.sun.star.awt.MouseEvent struktúra definiálja, amely a következő adatokat szolgáltatja:
A com.sun.star.awt.MouseButton tulajdonságban az egérgombokhoz definiált állandók a következők:
A következő példa az egér helyzetét és a megnyomott egérgombot adja eredményül:
| |||||
| |||||