![]() |
![]() |
| |||
|
Ez a példa létrehoz egy TextCursor objektumot a szövegkeret beszúrási pontjaként. Ez a szöveg első és második szava közé kerül. A szövegkeret a program a Doc.createInstance metódussal hozza létre. Ezután a szövegkeret-objektumok tulajdonságait a megfelelő értékekre állítja. Itt kell felhívni a figyelmet az AnchorType tulajdonság (a TextContent szolgáltatásból) és a VertOrient tulajdonság (a BaseFrameProperties szolgáltatásból) tulajdonság közötti interakcióra. Az AnchorType tulajdonság értéke AS_CHARACTER lesz. Ezért a szövegkeret közvetlenül a folyamatos szövegbe kerül, és karakterként viselkedik. Például átvihető a következő sorba egy sortöréssel. A VertOrient tulajdonság LINE_TOP értéke biztosítja, hogy a szövegkeret felső széle ugyanolyan magasan legyen, mint a karakter felső széle. Ha az inicializálás befejeződött, a keret végül bekerül a szöveges dokumentumba a insertTextContent metódus meghívásával. A szövegkeret tartalmát a már többször említett TextCursor objektummal lehet elérni, amely a szövegkereteknél is rendelkezésre áll.
A példaprogram létrehoz egy szövegkeretet, beszúrja az aktuális dokumentumba, és megnyitja a szövegkeret TextCursor objektumát. Ezzel a kurzorobjektummal félkövérre állítja a betűtípust, és beállítja a bekezdés igazítását középre. Ezután a szövegkerethez az "Ez egy teszt!" karakterláncot rendeli. SzövegmezőkA szövegmezők TextContent objektumok, mert további funkcionalitást biztosítanak a sima szövegen kívül. A szövegmezők ugyanazokkal a metódusokkal szúrhatók be egy szöveges dokumentumba, mint a TextContent objektumok:
A példaprogram beszúr egy szövegmezőt az aktuális dátummal az aktuális szöveges dokumentum elejére. Az IsDate tulajdonság True (igaz) értéke miatt csak a dátum jelenik meg, az idő nem. Az IsFixed tulajdonság False értéke biztosítja, hogy a dátum mindig frissítve legyen a dokumentum megnyitásakor. Megjegyzés - Míg a VBA-ban a mezőt típusát a Document.Fields.Add metódus egyik paramétere határozza meg, addig a StarOffice Basic programban a mezőtípust meghatározó szolgáltatás neve definiálja a mező típusát. Régebben a szövegmezőket a StarOffice programban a régi Selection objektum számos metódusával lehetett elérni, (például InsertField, DeleteUserField és SetCurField). A StarOffice 8 programban a mezőket objektumorientált megközelítéssel lehet kezelni. Szövegmező létrehozásához először létre kell hozni egy kívánt típusú szövegmezőt, majd inicializálni azt a megfelelő tulajdonságokkal. Ezután a szövegmezőt az insertTextContent metódussal kell a szövegbe beszúrni. Az erre vonatkozó forráskód az előző példában látható. A legfontosabb mezőtípusok és azok tulajdonságai a következő részekben vannak ismertetve. A szövegmezők beszúrásán felül, a mezők dokumentumban való keresése is fontos feladat. A következő példa bemutatja, hogyan lehet egy ciklussal végiglépdelni egy dokumentum szövegmezőin, és ellenőrizni azok típusát.
A meglévő szövegmezők beolvasásának kezdőpontja a dokumentumobjektum TextFields listája. Ez a példa létrehoz egy Enumeration objektumot a lista alapján, amellyel le lehet kérdezni az összes szövegmezőt egy ciklusban. A talált szövegmezők által támogatott szolgáltatásokat ellenőrzi a program a supportsService metódussal. Ha a mező egy dátum-/időmező vagy egy jegyzet, akkor az adott mezőtípus megjelenik egy ablakban. Ha viszont másmilyen típusú a mező, akkor az "ismeretlen" üzenet jelenik meg. | |||
| |||