Temporizador – botão checagem

Para que serve um temporizador? Bem, imagine que você precise fazer uma função e

que ela tenha de ser executada repetidas vezes a cada intervalo de tempo determinado

por você, e que o programa principal siga em frente executando as outras funções.

O temporizador faz isso por você, executa repetidamente a função desejada.

É muito útil para atualizar horário ou datas num sistema, sem parar a execução principal.

 

temporizador

Segue o código de uso do temporizador para fazer um relógio digital, bons estudos:

 

Esta é a função que será executada pelo temporizador, já no início do programa:

Dentro dela temos os seguintes comandos:

sis.data( ) retorna uma string do dia e hora, e depois definimos a data como texto do rótulo

 No caso, componente é o “%s” passado como parâmetro no temporizador logo a frente no código, lembre-se que %s são caracteres que serão substituídos por um parâmetro passado automaticamente à função callback durante a execução.

e tempo é a string obtida da data e horário do sistema com o comando sis.data ( );

A novidade mesmo aqui é o temporizador que é criado pela função ig.temporizador, sua sintaxe é:

temp = ig.temporizador ( id , intervalo , componente_pai , string_da_funcao_callback );

onde teremo:

id = é a identidade do temporizador, é um número de 1 a 10, apenas esses números poderão ser usados,

pois só é possível criar 10 temporizadores, uma limitação é claro, mas é mais do que suficientes.

intervalo = é o tempo de espera para a função ser executada novamente, é em milisegundos, isto é,

se quiser um segundo deve passar o parâmetro 1000 ;

componente_pai = sem esse parâmetro não funciona, dá erro. Simplesmente passe a variável da janela principal,

para que serve este parâmetro? Muito simples, ao ser destruído o componente pai o temporizador é destruído também.

e por útilmo:

string_da_funcao_callback = é a função que você criou para ser repetida, deve passar a string dela ex:

se você criou uma função chamada tempori ( comp , janela ) o parâmetro será [[ tempori ( comp, janela ) ]] , com os

duplos colchetes indicando string.

 

  Uma vez criado o temporizador ainda falta iniciá-lo, dar a partida, usando a seguinte função:

o primeiro parâmetro é a variável que guarda o temporizador, o segundo é o componente_pai de novo.

Para pausar o temporizador use:

 

e para reiniciar:

No exemplo acima coloquei essas funções dentro da callback do botão checagem, para que quando estiver ativo o botão

o temporizador pare e se tiver desmarcado, o temporizador reinicia.

Criando o botão checagem, não tem segredo algum, veja:

o único parâmetro é o texto que irá aparecer no botão.

Para conectar uma função neste botão siga a mesma forma dos botões normais, use o sinal ig.clique:

Ora, ainda não entendi o %s no parâmetro da string da função callback!

Veja é muito mais simples do que aparece, o %s é substituído durante a execução da callback pelo próprio

componente conectado a ela, que no caso é o bt_pause, seria o mesmo que bt_pause no lugar do %s:

porém é muito mais reaproveitável e flexível usar o %s , muito útil quando você cria e conecta componentes

dinamicamente por meio de matrizes.

 

Bom, queremos saber quando o botão checagem está marcado ou não e de

acordo com isso realizar um comando ou outro, para isso existe a seguinte função

que retorna verdadeiro caso o botão esteja marcado ou falso caso ele não esteja,

com isso é só fazer uma condição e pronto:

O único parâmetro é o botão a ser verificado, retorno = falso ou verdadeiro

No nosso exemplo acima nós definimos na condição que se ele estiver marcado o temporizador pára

senão o temporizador reinicia:

 

Bom, pessoal, é isso aí, até a próxima.

Att. Adalberto

 

 

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *