Promotic
WikipediaLinkedInYoutubeTwitterFacebook

Co je to objekt

Abychom pochopili objektový jazyk, musíme přesněji vysvětlit, co znamená slovo "objekt". V předchozích kapitolách jste se již s pojmem objekt několikrát setkali:

- Nejprve jste ve stromu Pma objektů vytvářeli Pma objekty ("BoilerPlant", "Boiler1", "Data", "Panel", atd.)
- Dále jste v objektu "Data" (typu PmaData) vytvářeli proměnné "Power", "Temperature" a "Status" (toto jsou objekty typu PmVar)
- Následně jste vytvářeli Pmg objekty (Táhlo, Číslo, atd.) v obrazu.


Pojem objekt lze definovat různými způsoby. Pro další výklad použijeme jednoduchý příklad.
Názorně si vše vysvětlíme pomocí objektu, který představuje imaginární okno v OS Windows (tento objekt je tedy vymyšlen a slouží nám pouze pro vysvětlení).
V následujících příkladech budeme proměnnou, ve které je uložena reference na tento objekt, označovat oWindow.

1) Objekt má VLASTNOSTI

Objekt "okno" může mít například následující vlastnosti:

- X .. X-ová pozice levého horního rohu
- Dy .. velikost okna ve směru Y
- BackgroundColor .. barva pozadí, atd.


Každá vlastnost má svůj název (X, Dy, BackgroundColor) a svou hodnotu.

S vlastnostmi lze provádět dvě základní operace:

1) Lze zjistit hodnotu vlastnosti (říkáme, že vlastnost můžeme číst):
JavaScriptVBScriptVyber a zkopíruj do schránky

var nDy = oWindow.Dy;


2) Lze nastavit hodnotu vlastnosti (říkáme, že do vlastnosti můžeme zapisovat):
JavaScriptVBScriptVyber a zkopíruj do schránky

oWindow.Dy = 1024;


Poznámka: Předchozí ukázky (stejně jako následující) jsou jen schématické a budou vysvětleny dále. Důležité je si zapamatovat, že je vždy potřeba uvést objekt i název vlastnosti a tyto dva pojmy se oddělují tečkou.

Některé vlastnosti mohou být určeny pro čtení i zápis, některé vlastnosti mohou být určeny jen pro čtení.

2) Objekt má METODY

Objekt "okno" může mít například následující metody:

- Print .. vytisknutí obsahu okna na tiskárnu
- SaveToFile .. uložení obsahu okna do souboru typu .jpg nebo .png.


S metodama lze provádět jen jednu akci: metodu můžeme volat. Voláním metody se provede příslušná operace, například tisk na tiskárnu.

Metoda může vracet hodnotu. Například často vrací příznak, jak operace dopadla, může vracet výsledek nějakého složitého výpočtu, atd.

Metoda může mít parametry (a většinou má), které blíže určují, jak se má operace provést. Například u metody SaveToFile lze parametrem říct, do kterého souboru se má obsah uložit.

Příklady volání metod:
JavaScriptVBScriptVyber a zkopíruj do schránky

var Result;

//Když metoda nemá parametry:
oWindow.Print();  //Nezajímá nás vrácená hodnota
Result = oWindow.Print();  //Zajímá nás vrácená hodnota

//Když metoda má parametry:
oWindow.SaveToFile("C:\\Data\\Picture.jpg");  //Nezajímá nás vrácená hodnota
Result = oWindow.SaveToFile("C:\\Data\\Picture.jpg");  //Zajímá nás vrácená hodnota

3) Objekt má UDÁLOSTI

Objekt "okno" může mít například následující události:

- onOpen .. nastalo otevření okna
- onClose .. nastalo zavření okna
- onMouseClick .. na okně bylo kliknuto myší


Pomocí vlastností a metod můžete provádět nad objektem operace. Událost však plní právě opačnou funkci – objekt vám svou událostí sám říká, že se něco stalo. Událost se nečte, nezapisuje ani nevolá – událost je vyvolána.

Událost může mít také parametry. Tyto parametry však nezadáváte (jako v případě vlastností a metod), ale těmito parametry vám objekt sám blíže určuje, co se mu stalo. Například v případě události onMouseClick by v parametrech události mohla být informace, zda nastalo kliknutí levým nebo pravým tlačítkem myši.

Každé události může být přiřazen skript tak, že pokud tato událost nastane, pak se příslušný skript provede. V systému PROMOTIC je každý skript přiřazen nějaké události, jedná se o tzv. událostní programování.
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice