Classe: TTimer
Cria um objeto que executa um bloco de código respeitando o temporizador, atrelado a um componente da interface visual.
New
Método construtor da classe.
TTimer(): New ( [ nInterval], [ bAction], [ oWnd] ) --> oObjeto
Nome | Tipo | Descrição | Obrigatório | Referência |
nInterval | Numérico | Indica o intervalo, em milissegundos (*) , para disparar o bloco de código. | ||
bAction | Bloco de código | Indica o bloco de código que será executado a cada intervalo definido. (**) | ||
oWnd | Objeto | Indica a janela (***) ou controle visual onde o divisor será criado. |
(*) O Intervalo mínimo considerado é de 1000 milissegundos ( 1 segundo ) entre as chamadas. Caso seja informado um valor menor, serão considerados 1000 milissegundos.
(**) O Bloco de código pode ou não interagir com a interface, e pode ter um tempo de execução variável – depende do que exatamente será executado. Caso o tempo especificado no objeto Timer deva ser considerado como o intervalo entre as execuções e não o intervalo entre os disparos, o próprio bloco de código deve se encarregar de suspender o timer ao ser executado, e reabilitar o timer ao término da execução.
(***) Mesmo sendo o parâmetro oWnd opcional, caso o mesmo não seja informado ou seja informado como NIL, o objeto do tTIMER() é criado, mas não dispara / executa o evento.
- ()
- Retorna o objeto criado.
oTimer := TTimer():New(2000, {|| alert(time()) }, oDlg )
Propriedade | Descrição | Tipo |
bAction | Indica o bloco de código que será executado a cada intervalo definido. | Bloco de código |
lActive | Indica se, verdadeiro (.T.), o timer está ativo; caso contrário, falso (.F.). | Lógico |
lLiveAny | Indica se, verdadeiro (.T.), o timer será ativado quando houver uma janela; caso contrário, falso (.F.). | Lógico |
nInterval | Indica o intervalo, em milissegundos, para executar o bloco de código. | Numérico |
#include "TOTVS.CH"
User Function TTimer()
DEFINE DIALOG oDlg TITLE "Exemplo TTimer" FROM 180,180 TO 550,700 PIXEL
nMilissegundos := 2000 // Disparo será de 2 em 2 segundos
oTimer := TTimer():New(nMilissegundos, {|| alert(time()) }, oDlg )
oTimer:Activate()
ACTIVATE DIALOG oDlg CENTERED
Return