Documente Academic
Documente Profesional
Documente Cultură
VB.NETIniciandonocontroleTimer
O componente Timer presente no VB.NET no igual ao timer das verses anteriores. No VB6 o
controle timer apresentava a seguinte peculiaridade:
Voc podia atribuir o valor zero propriedade Interval do controle para desativlo e isto
equivale a definir a sua propriedade enabled igual a False
Mas a propriedade enabled podia estar definida como True e ainda assim o controle ficaria
desativado se a propriedade Interval fosse definida como zero.
No VB.NET voc no pode mais atribuir o valor zero a propriedade Interval . Para ativar o
controle deve definir enabled = True.
Nota Outra alterao no VB.NET , ainda que no se refira diretamente ao controle Timer , so
as declaraes Date e Time ; estas declaraes foram substitudas pelas declaraes Today e
TimeOfDay.
O objetivo bsico do controle Timer permitir que o seu cdigo seja executado a um certo
intervalo com base em perodos de tempo. Se o controle estiver ativo ele ir acionar o evento
Tick a intervalos regulares que voc pode definir. Voc ento deve inserir o cdigo no evento
Tick para executar a operao que voc deseja que seja executada nos intervalos definidos.
O controle Timer no possui uma interface visvel em tempo de execuo somente em tempo de
desenho.
Nota: Na verdade o controle no fica inserido no formulrio , mas numa rea separada abaixo
da do projeto , isto deixa deixa o formulrio mais limpo e no interfere na visualizao do
projeto do formulrio.
1/4
29/09/2016
VB.NETIniciandonocontroleTimer
lblrelogio.Text =
DateTime.Now.ToLongTimeString
End Sub
Executando o projeto o evento o cdigo do evento Tick do controle Timer ir ser executado a
cada 1 s , com isto a hora atual do seu micro ser exibida no controle :
A classe Timer esta presente no namespace System.Timers e podemos usar uma declarao
Import para criar um novo Timer :
Imports System.Timers
Dim t As New
System.Timers.Time()
Dim t as new Timer()
Podemos usar outro construtor que permite atribuir um valor para o nosso controle Timer:
Dim t As New
System.Timers.Timer(3000)
Assim como usamos o evento Tick do controle Timer podemos incluir um manipulador de eventos
ao controle Timer de maneira a receber as notificaes do controle :
Vejamos um exemplo:
file:///D:/VB.NET%20%20Iniciando%20no%20controle%20Timer.html
2/4
29/09/2016
VB.NETIniciandonocontroleTimer
No inicio do cdigo do formulrio vamos instanciar a varivel objeto tempo como do tipo Timer
iniciando o seu valor com 1000 ms ( igula 1 s)
Private tempo As New System.Timers.Timer(1000)
Agora no evento Load do formulrio vamos definir o evento que ir manipular o controle
Timer
AddHandler tempo.Elapsed, AddressOf DispararTimer
A seguir o cdigo da rotina que ir manipular o evento do controle Timer. A rotina ir atribuir o
valor da data e hora atual a Label que a exibir no formulrio.
Para ativar a rotina o cdigo do boto Parar apenas define a propriedade enabled como
True. Para desativar basta definir enabled como False:
Como palavra final gostaria de lembrar que o controle Timer no faz trabalho simultneo. Se
voc usar dois controles Timers no formulrio e executlos ao mesmo tempo um Timer ir
trabalhar interrompendo o seu cdigo para uma nica tarefa.
Logo Timers no so adequados para tarefas de longa durao que requeiram execuo
simultneas.(Para isto use uma Thread)
3/4
29/09/2016
VB.NETIniciandonocontroleTimer
Gostou ?
Referncias:
Compartilhe no Facebook
Compartilhe no Twitter
file:///D:/VB.NET%20%20Iniciando%20no%20controle%20Timer.html
4/4