Update cookies preferences
Promotic

AddEventTimer - metoda objektu PmaRoot

Popis:
Zaregistruje funkci do časovače aplikace na jednorázové nebo opakované vyvolání po uplynutí zadané doby.
Syntaxe:
Empty AddEventTimer(Long nTime, Long nType, String sFuncId, Function Func)
Parametry:
nTime(Long) Buď časový úsek (perioda nebo timeout) v milisekundách, po kterém dojde k zavolání funkce
nebo datum a čas (datový typ Date), kdy dojde k zavolání funkce.
nType(Long) Typ požadavku na vnitřní časovač.
0 - (nebo -1 zastaralé) Funkce bude volána opakovaně se zadanou periodou (parametr nTime).
1 - Funkce bude volána jednou se zadaným zpožděním (parametr nTime).
2 - Funkce bude volána jednou se zadaným datumem a časem. Tato metoda není funkční ve Web obrazech.
sFuncId(String) Identifikátor registrované událostní funkce.
- Umožňuje odebrání funkce metodou RemoveEventTimer.
- Zamezuje duplicitnimu zaregistrování téže funkce.
- Může obsahovat jakékoliv znaky (není to systémový název).
- Nesmí být prázdný řetězec.
- Doporučuje se použít např. celou cestu k Pma objektu.
Func(Function) JavaScript událostní funkce, která bude volána časovačem aplikace.
Viz také:
Příklad:
Příklad opakovaného (10x) spuštění událostní funkce realizovaný dvěma přístupy. První přístup spočívá v opakované nové registraci funkce jednorázového spuštění, dokud je potřeba.
JavaScriptVyber a zkopíruj do schránky

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);
Druhý přístup spočívá v jediné registraci funkce pro opakované spuštění, která je odregistrována až je potřeba. A současně provede animaci pohybu objektu "Ellipse" v obrazu.
JavaScriptVyber a zkopíruj do schránky

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);

Historie:
Pm9.00.25: Nová volba 2 v parametru nType
Pm9.00.16: Nový parametr sFuncId
Pm9.00.09: Vytvořeno
© MICROSYS, spol. s r.o.