Promotic
Zalogowanie logon

AddEventTimer - metoda obiektu PmaRoot

Opis:
Rejestracja funkcji do czasomierza aplikacji na jedorazowe lub wielokrotne wołanie po upływie określonego czasu.
Składnia:
Empty AddEventTimer(Long nTime, Long nType, String sFuncId, Function Func)
Parametry:
nTime(Long) Albo odcinek czasu (period lub timeout) w milisekundach, po którym dojdzie do wywołania funkcji
lub data oraz czas (typ danych Date), kiedy dojdzie do wywołania funkcji.
nType(Long) Typ wymógu wewnętrznego czasomierza.
0 - (lub -1 przestarzałe) Funkcja zostanie wywołana powtórnie z określonym periodem (parametr nTime).
1 - Funkcja zostanie wywołana raz z określonym opóźnieniem (parametr nTime).
2 - Funkcja zostanie wywołana raz z określoną datą i godziną. Metoda ta nie działa w Web panelach.
sFuncId(String) Identyfikator zarejestrowanej funkcji zdarzenia.
- Umożliwia usunięcie funkcji przy pomocy metody RemoveEventTimer.
- Uniemożliwia ponowne zarejestrowanie tej samej funkcji.
- Może zawierać dowolne znaki (nie jest to nazwa systemowa).
- Nie może być pusty łańcuch.
- Jest zalecane zastosowanie np. pełnej ścieżki do Pma obiektu.
Func(Function) JavaScript funkcja zdarzenia, która zostanie wywołana timerem aplikacji.
Patrz również:
Przykład:
Przykład cyklicznego (10x) uruchomienia funkcji zdarzenia realizowany na dwa sposoby. Pierwsze podejście polega na cyklicznej nowej rejestracji funkcji pojedyńczego uruchomienia aż do kończ wymogu.
JavaScriptWybierz oraz skopiuj do schowka

function onTick()
{
Pm.Debug("onTick: tClick=" + Pm.FormatDate(tClicked, 1) + ", nCounter=" + nCounter);
if (nCounter-- > 0)
{
pMe.Root.AddEventTimer(1000, 1, pMe.GetPathName(), onTick);
}
}
var tClicked = Pm.Time;
var nCounter = 10;
pMe.Root.AddEventTimer(1000, 1, pMe.GetPathName(), onTick);
Drugie podejście polega na jednej rejestracji funkcji dla cyklicznego wołania, która zostanie odrejestrowana według wymogu. Równocześnie wykona animację ruchu obiektu "Ellipse" w panelu.
JavaScriptWybierz oraz skopiuj do schowka

function onTick()
{
Pm.Debug("onTick: tClick=" + Pm.FormatDate(tClicked, 1) + ", nCounter=" + nCounter);
if (nCounter-- < 0)
{
pMe.Root.RemoveEventTimer(pMe.GetPathName());
}
}
var tClicked = Pm.Time;
var nCounter = 10;
pMe.Root.AddEventTimer(60, 0, pMe.GetPathName(), onTick);

Historia:
Pm9.00.25: Nowa opcja 2 w parametrze nType
Pm9.00.16: Nowy parametr sFuncId
Pm9.00.09: Wytworzono
© MICROSYS, spol. s r.o.Update cookies preferences