Promotic
WikipediaLinkedInYoutubeTwitterFacebook

Methods - vlastnost objektu PmaObject

Popis:
Vrací objekt, pomocí kterého se přistupuje k metodám projektanta definovaných v kartě "Metody".
Syntaxe:
Object Methods
Volání:
oObject.Methods.method1 par1, par2 ...
Poznámka:
Vlastnost je určena jen pro čtení. Vlastnost samotnou nelze měnit (je "jen pro čtení"), ale volaná metoda může měnit svým algoritmem cokoli.
 
Metody projektanta v objektu PmaPanel:

Tato vlastnost je funkční i ve Web obrazech. Viz Příklad2.

Volání metod pro Web je 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)

Volání této metody pro Web obrazy by se 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 Pmg objektů a v každém tomto Pmg objektu by se volala tato metoda v události onRefresh, pak by se při každém obnovení obrazu provádělo postupně 100 komunikací, což by bylo asi neúnosné.

 
Metody projektanta v objektu PmaSequencer:

Objekt PmaSequencer je vyjímečný, protože jeho událost onStep je vyvolána 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, pak 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 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 volána metoda v tomtéž vlákně.

 
Metody projektanta v objektu PmaRoot:

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

Viz také:
- Pm.Methods (vlastnost)
- PmgObject.Methods (vlastnost)
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")
JavaScriptVBScriptVyber a zkopíruj do schránky

oObject.Methods.Init(x, y);
return oObject.Methods.Close();
Příklad2:
Metody objektu PmaPanel lze volat také z událostí Pmg objektů. 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 v události onButtonUp objektu PmgButton:
JavaScriptVBScriptVyber a zkopíruj do schránky

var nVal = pMe.PmPanel.Methods.GetMyValue(x, y);
Další příklady:
Viz: Příklad v popisu karty "Metody".
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice