Promotic
WikipediaLinkedInYoutubeTwitterFacebook

Methods - wlaściwość obiektu PmaObject

Opis:
Zwraca obiekt, przy pomocy którego uzyskuje się dostęp do metod projektanta zdefiniowanych w zakładce "Metody".
Składnia:
Object Methods
Wołanie:
oObject.Methods.method1 par1, par2 ...
Notatka:
Właściwość przeznaczona tylko do odczytu. Samej właściwości nie można zmieniać (jest "tylko do odczytu"), jednak wywołana metoda może w swoim algorytmie zmieniać cokolwiek.
 
Metody projektanta w obiekcie PmaPanel:

Właściwość ta działa także w Web panelach. Patrz Przykład2.

Wołanie metod dla Webu jest chronione przy pomocy upoważnienia WebMethods.

Ograniczenia: Wywoływane metody mogą mieć parametry i wartość wyjścia (pResult) tylko:
- prostych typów danych (np. Integer, String, itd.)
- tablica 1-wymiarowa (Array) zdefiniowane np. Dim arr(20)
- tablica 2-wymiarowa (Array) zdefiniowane np. Dim arr(10,20)
- w pozycjach tablicy nie mogą się znajdować następne tablice (Array)

Wykorzystanie tej metody dla Web paneli powinno się ograniczyć do rozsądnych granic, ponieważ każde takie wywołanie powoduje wykonanie komunikacji XML z serwerem! Jeżeli więc na przykład w ekranie było 100 Pmg obiektów i w każdym Pmg obiektcie byłaby wywoływana obecna metoda w zdarzeniu onRefresh, wtedy przy każdym odświeżeniu ekranu zostałoby wykonanych kolejno 100 komunkacji, co mogło by się okazać jako nie do przyjęcia.

 
Metody projektanta w obiekcie PmaSequencer:

Obiekt PmaSequencer jest unikalnym, ponieważ jego zdarzenie onStep zostanie wywołane w głównym lub roboczym wątku ("thread:work;" lub "thread:main;"). Dlatego metody zostały wewnętrznie podwojone oraz zkompilowane jak w wątku głównym tak w roboczym. Jeżeli metoda zostanie wywołana z wątku roboczego, wtedy zostanie wykonana bezpośrednio w nim. W innych przypadkach identycznie jak w przypadku metod innych obiektówzostanie wykonana w wątku głównym.

To umożliwia proste tworzenie funkcji pomocniczych tak, by zdarzenie onStep mogło być bardziej przejżyste. Nawet podczas zmiennego wołania zdarzenia onStep w głównym lub roboczym wątku, zostanie wtedy automatycznie wywołana metoda w tymże wątku.

 
Metody projektanta w obiekcie PmaRoot:

Metody w obiekcie PmaRoot (globalne metody aplikacji) są wołane przy pomocy właściwości Pm.Methods.

Przykład1:
Przykład dostępu do metod o nazwach użytkownika Init oraz Close (x oraz y są parametrami metody Init)
JavaScriptVBScriptWybierz oraz skopiuj do schowka

oObject.Methods.Init(x, y);
return oObject.Methods.Close();
Przykład2:
Metody obiektu PmaPanel można wołać również w zdarzeniach Pmg obiektów. Można je wołać nawet jeżeli dany panel jest tworzony dla Webu - w tym przypadku panel-klient woła daną metodę zdalnie przy pomocy komunikacji XML! W taki sposób została by wołana metoda na przykład w zdarzeniu onButtonUp obiektu PmgButton:
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var nVal = pMe.PmPanel.Methods.GetMyValue(x, y);
Następne przykłady:
Patrz: Przykład w opisie zakładki "Metody".
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice