Makrá v OpenOffice.org 5/IV. – Textové dialógové vstupy

Július Pastierik  /  28. 09. 2006, 00:00

V dnešnej, už štvrtej časti programovania makier v OpenOffice.org, ktorú zameriavame na prácu s vlastnými dialógovými oknami sa zameriame na jednoduché formátované a neformátované textové vstupy.

Z hľadiska jednoduchých textových vstupov máme k dispozícii dva rôzne dialógové prvky. Jedná sa o jednoduché neformátované textové pole a formátované textové pole. Teraz si v jednoduchosti popíšeme ich vlastnosti a možnosti.

neformátovaný text

Neformátované textové pole je určené na interaktívne zadanie ľubovoľného textu s tým, že môžeme preddefinovať jeho vstupnú hodnotu. Predpokladajme, že máme definovaný dialóg „dlg“, do ktorého vložíme textové pole „Textove_pole“. Vlastný text potom nájdeme v premennej:

dlg.model.Textove_pole.text

Pokiaľ chceme, môžeme pre textové pole v jeho vlastnostiach povoliť viacriadkový vstup. Jednotlivé riadky sú potom oddelené znakom „Carriage return“ (hexadecimálny kód 0D), takže inicializácia dvoch riadkov vstupnej hodnoty textu vyzerá napríklad takto:

dlg.model.Textove_pole.text="prvý riadok"+chr(13)+"druhý riadok"

formátovaný text

Formátované textové pole sa veľmi podobá bunkám v tabuľkovom procesore Calc. Je to tak preto, že môžeme zadať jeho formát, pričom sa používajú presne tie isté formátovacie prvky, ako pri bunkách v tomto tabuľkovom procesore. Pretože vlastné zadávané hodnoty môžu mať rôzne vlastnosti (text, číslo, dátum, logická hodnota a pod.) a preto sa inicializujú a získavajú ako text a je iba na nás, ako z nich získame prípadnú „netextovú“ hodnotu.

Pravdaže, OpenOffice.org nás v tomto smere nesklame a nech do takto zadefinovaného políčka zadáme čokoľvek, prevedie to do príslušného formátu a naozaj vám doporučujem zadať napr. do políčka zadefinovaného ako dátum napríklad svoje krstné meno – po kliknutí na iné políčko program automaticky túto hodnotu zmení napr. na minimálnu hodnotu, ktorú definujeme vo vlastnostiach tohto typu poľa.

príklad vstupov textu

Prístup k formátovanému textovému poľu je presne ten istý, ako pri neformátovanom, t.j. napr. ak sme do dialógu „dlg“ vložili formátované textové pole „Formatovacie_pole“, inicializácia môže vyzerať takto:

dlg.model.Formatovacie_pole.text="28.september 2006"

Pravdaže, ako sme už spomínali, z premennej dlg.model.Textove_pole.text získame zadaný vstup po zavretí nášho dialógového okna vo formáte textu a v prípade potreby si ho musíme sami previesť na hodnotu iného typu.

Na budúce: Číselné dialógové vstupy, alebo nielen texty sú zaujímavé.


Neprehliadnite: