Promotic
WikipediaLinkedInYoutubeTwitterFacebook

Methods - vlastnost objektu PmObject

Popis:
Vlastnost vrací objekt, pomocí kterého se přistupuje k uživatelským metodám definovaných v záložce Metody.
Syntaxe:
Methods As Object
Volání:
oObject.Methods.method1 par1, par2 ...
Poznámka:
Vlastnost je určena jen pro čtení. Vlastnost samotnou nelze měnit (je "pouze pro čtení"), volaná metoda však může měnit svým algoritmem cokoli.
 
Uživatelské metody v objektu PmPanel:

Tato vlastnost je funkční i pro Web Obrazy. Viz Příklad2.

Volání metod je pro WEB chráněno pomocí oprávnění WebMethods.

Omezení: Voláné metody mohou mít parametry a výstupní hodnotu (pResult) jen:
- jednoduchých datových typů (např. Integer, String, atd.)
- 1-rozměrné pole (Array) definované např. Dim arr(20)
- 2-rozměrné pole (Array) definované např. Dim arr(10,20)
- v položkách pole nesmí být obsažena další pole (Array)

Pro Web obrazy by se volání této metody mělo používat s mírou, protože každé toto volání provádí XML komunikaci se serverem! Pokud by tedy například bylo v obraze 100 prvků a v každém tomto prvku by se volala v události onRefresh tato metoda, pak by se při každém obnovení obrazu provádělo postupně 100 komunikací, což by bylo asi neúnosné.

 
Uživatelské metody v objektu PmSequencer:

Objekt PmSequencer je vyjímečný v tom, že jeho hlavní událost onStep se může vykonávat v hlavním nebo pracovním vlákně ("thread:work;" nebo "thread:main;"). Proto byly metody interně zdvojeny a přeloženy jak v hlavním, tak v pracovním vlákně. Pokud se metoda vyvolá z pracovního vlákna, bude provedena přímo v pracovním vlákně. V ostatních případech se stejně jako u metod ostatních objektů provede v hlavním vlákně.

Toto umožňuje snadné vytvoření pomocných funkcí tak, aby vlastní událost onStep mohla být přehlednější. Dokonce i při střídavém vyvolávaní události onStep v hlavním nebo pracovním vlákně je pak automaticky vyvolána metoda v tomtéž vlákně.

 
Uživatelské metody v objektu PmRoot:

Metody v objektu PmRoot (globální metody aplikace) se volají pomocí vlastnosti Pm.Methods.

Příklad1:
Ukázka přístupu k metodám s uživatelskými názvy Init a Close (x a y jsou parametry metody Init)
oObject.Methods.Init x, y
bResult = oObject.Methods.Close()
Příklad2:
Metody objektu PmPanel lze volat také z událostí grafických prvků. Dokonce je lze volat i když je daný obraz tvořen pro Web - v tom případě obraz-klient volá tuto metodu vzdáleně pomocí XML komunikace! Takto by se například volala metoda např. z události onButtonUp grafického prvku PmiButton:
nVal = pMe.PmPanel.Methods.GetMyValue(x,y)
Další příklady:
Viz: příklad v popisu konfigurační záložky Metody.
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice