![]() |
![]() |
| ||
|
Megjegyzés - Az itt ismertetett, szöveg bekezdéseihez való hozzáférést biztosító eljárás tartalma hasonló a VBA-ban használt Paragraphs listához, amely az ott rendelkezésre álló Range és Document objektumon keresztül érhető el. Míg a VBA-ban a bekezdésekhez a számuk alapján lehet hozzáférni (például a Paragraph(1) függvénnyel), a StarOffice Basic programban az előbbiekben ismertetett Enumeration objektumot kell használni. A StarOffice Basic programban nincs közvetlen megfelelője a VBA-ban rendelkezésre álló Characters, Sentences és Words listáknak. Viszont megvan a lehetőségünk, hogy átváltsunk egy TextCursor objektumra, amellyel lehetővé válik a karakter-, szó- és mondatszintű navigáció (részletesebben lásd: A TextCursor című rész). BekezdésrészekLehet, hogy az előző példa megfelelően lecseréli a szöveget, de néha előfordulhat, hogy elrontja a formázást. Ez azért fordulhat elő, mert egy bekezdés különálló alobjektumokból áll. Ezek mindegyike saját formázási információkat tartalmaz. Ha például a bekezdés közepe egy félkövér szót tartalmaz, akkor ez a StarOffice programban három bekezdésrészként fog megjelenni: a félkövér betűtípus előtti rész, majd a félkövér szó, és végül a félkövér betűtípus utáni rész, amely normálként ismét jelenik meg. Ha most a bekezdés szövegét módosítjuk a bekezdés String tulajdonságával, akkor a StarOffice először törli a régi bekezdésrészeket, majd egy új bekezdésrészt szúr be. Az eredeti rész formázása ezután el fog tűnni. Ha meg akarjuk tartani a formázást, elérhetjük az adott bekezdésrészeket is a teljes bekezdése helyett. A bekezdések rendelkeznek saját Enumeration objektummal ebből a célból. A következő példa egy dupla ciklust mutat be, amely végiglépdel a szöveges dokumentum összes bekezdésén és azok bekezdésrészein, majd alkalmazza az előző példában megismert cseréket:
A példa egy kettős ciklussal lépdel végig a szöveges dokumentumon. A külső ciklus a szöveg bekezdésein lépdel végig. A belső ciklus ezeknek a bekezdéseknek a részeit dolgozza fel. A példában bemutatott kód módosítja a bekezdésrészek tartalmát a bekezdésrész String tulajdonságának használatával, akárcsak az előző példa a bekezdésekkel. Viszont mivel itt közvetlenül a bekezdésrészeket módosítja a program, így a formázásuk megmarad a szöveg cseréje után. FormázásA szöveget többféleképpen formázhatjuk. A legegyszerűbb mód, ha a formázási tulajdonságokat közvetlenül egy szövegrészhez rendeljük. Ezt hívják közvetlen formázásnak. A közvetlen formázás főleg a rövid szövegeknél használatos, mert ott a felhasználó az egérrel el tudja végezni a formázást. Például kiemelhetünk egy szót a szövegen belül a félkövér betűtípussal, vagy középre igazíthatunk egy vonalat. A közvetlen formázás mellett, formázhatjuk a szöveget sablonok használatával is. Ezt hívják közvetett formázásnak. A közvetett formázásnál egy előre definiált sablont rendelünk az adott szövegrészhez. Ha a szöveg megjelenését később módosítani kell, csak a sablont kell módosítanunk, a StarOffice ezután módosítja az összes olyan szövegrész megjelenését, amely ezt a sablont használja. Megjegyzés - A VBA-ban egy objektum formázási tulajdonságai általában több alobjektum között oszlanak szét (például Range.Font, Range.Borders, Range.Shading és Range.ParagraphFormat). A tulajdonságokat kaszkádolt kifejezések formájában lehet elérni (például Range.Font.AllCaps). Ezzel szemben a StarOffice Basic programban a formázási tulajdonságok közvetlenül, a megfelelő objektumok használatával érhetők el (TextCursor, Paragraph stb.). A következő két szakasz áttekintést nyújt a StarOffice program karakter- és bekezdéstulajdonságairól. Megjegyzés - A régi StarOffice API-ban a szöveget a Selection objektum használatával lehetett formázni, és annak alobjektumaival (például Selection.Font, Selection.Paragraph és Selection.Border). Az új API-ban a formázási tulajdonságok megtalálhatók minden objektumban (Paragraph, TextCursor stb.), és közvetlenül alkalmazhatók. Az elérhető karakter- és bekezdéstulajdonságok listája a következő bekezdésekben található. KaraktertulajdonságokAzokat a formázási tulajdonságokat, amelyek az egyes karakterekre vonatkoznak, karaktertulajdonságoknak nevezik. Ezek magukban foglalják a félkövér típust és a betűtípust. Az olyan objektumoknak, amelyek lehetővé teszik a karaktertulajdonságok beállítását, támogatniuk kell a com.sun.star.style.CharacterProperties szolgáltatást. A szolgáltatások széles skáláját felismeri, amelyek támogatják ezt a szolgáltatást. Ezek közé tartozik az előzőekben ismertetett, bekezdésekhez használható com.sun.star.text.Paragraph szolgáltatásai és a bekezdésrészekhez használható com.sun.star.text.TextPortion szolgáltatásai. A com.sun.star.style.CharacterProperties szolgáltatás nem nyújt semmilyen felületet, csak tulajdonságokat, amelyeken keresztül a karaktertulajdonságok megadhatók és meghívhatók. A karaktertulajdonságok teljes listája megtalálható a StarOffice API-referenciában. A következő lista ismerteti a legfontosabb tulajdonságokat:
| ||
| ||