Para que possamos fazer uma barra de progresso dentro de uma tela de Splash é necessário compreender a ferramenta Timer, mas ela é bastante simples. Basicamente ela cria eventos recorrentes, ou seja, eventos que se repetem em intervalos de tempo que podemos definir de acordo com nossa necessidade.

Vamos aos exemplos práticos, que mostrarão como lidar com esta simples, mas poderosa ferramenta. Aliás, ela é tão simples que sequer vou utilizar agora o nosso arquivo de exemplo contendo o programa de cadastro de clientes, mas sim criar um projeto vazio, pois será mais fácil demonstrar nele.

Então, em um projeto vazio vou arrastar um componente Timer para ele, conforme imagem abaixo:

Timer C#

Notem que o componente Timer é um dos que não se incorpora diretamente ao formulário, mas que age “nos bastidores”, por isso fica presente no rodapé do Visual C#. Agora, para já demonstrar claramente a função do Timer, vamos arrastar um componente Label para o formulário e alterar o seu texto para o número 1, conforme a imagem abaixo:

Timer C#

Em seguida vamos adicionar um botão ao formulário e rotulá-lo como “Iniciar Timer”, dessa forma:

Timer C#

Agora vamos adicionar código ao botão adicionado. Cliquemos duas vezes nele para gerar a função click e façamos a inserção do código abaixo, que o vinculará ao Timer adicionado:

Timer C#

Com isso fizemos a associação do clique do botão com o disparo do Timer. Agora execute o código e clique no botão para iniciar o disparo.

E então, o que aconteceu? Se no seu programa nada acontece, então está tudo correto! O fato é que associamos o clique do botão ao disparo do Timer, no entanto não vinculamos função alguma ao Timer! Na verdade temos a impressão de que nada está acontecendo, mas de fato o Timer está sendo disparado, só que ele não está programado para fazer nada! Vamos corrigir isso agora. No formulário vamos clicar duas vezes sobre o Timer para criar a função Tick, conforme ilustra a imagem abaixo:

Timer C#

O evento Tick é como se fosse o “Tick” de um relógio, ou seja, o passo do ponteiro dos segundos. Tudo o que estiver dentro desta função será executado a cada iteração do Timer. Então, para que isso se torne visível, criemos o seguinte código:

Timer C#

Este código é bem simples, mas caso não tenha ficado claro, estou pegando a variável global i e a atribuindo ao texto do Label inserido. No mesmo tick, ou seja, no mesmo ciclo faço o incremento dessa variável.

Agora vamos executar o código novamente e clicar no botão de disparo.

Timer C#

Agora o texto do Label está recebendo, a cada iteração do Timer, o valor da variável i, que também é incrementada a cada ciclo.

Nós poderíamos alterar o tempo de cada ciclo deste processo mexendo no valor da propriedade “Interval” do Timer. Altere-o de 100 para 1000, conforme a figura abaixo:

Timer C#

Agora execute e veja a diferença.

Deve ter ficado bem mais lento. Essa propriedade altera o intervalo entre os eventos e, assim como todas as propriedades de tempo do Visual C#, é medida em milissegundos.

E já que estamos falando em propriedades, vou comentar as mais importantes. A primeira é o (Name), que não é novidade e seu funcionamento é idêntico aos botões, checkboxes, textboxes e todos os outros componentes. Em seguida temos o Enabled, que determina se o Timer já iniciará ligado ou não. Para este pequeno exemplo, se o deixarmos com o valor "True", será desnecessário clicar no botão para iniciar o Timer. As propriedades GenerateMember e Modifiers se referem a como o Visual C# tratará o componente, e com sua visibilidade, respectivamente, e a propriedade Tag define uma sequência de identificação para o componente, mas nenhum dos três é relevante para a compreensão do componente Timer. O importante aqui é saber que o Interval define o intervalo entre um ciclo e outro do Timer e que o Enabled pode já inicializar o formulário com ele ativado.

Interrompendo um Timer

Bem, agora que sabemos como iniciar o Timer (função nome_do_timer.Start()), vamos ver como encerrá-lo.

Da forma como nosso pequeno programa está agora, se clicarmos no botão "Iniciar Timer", o Label receberá o valor da variável i, que é incrementada a cada ciclo, portanto temos a impressão que disparamos um contador e que ele não terá fim. Vamos imaginar que queremos que ele pare no número 60. Para isso deveremos criar esse pequeno código:

Timer C#

Esse foi o Timer! Aqui fiz um exemplo simples, que altera uma variável, mas suas opções de uso são inúmeras. O que é importante ser guardado é que ele gera eventos recorrentes, sua função Start inicia o processo e a Stop o interrompe. A propriedade Interval define os tempos, em milissegundos, entre um ciclo e outro e a Enabled o inicia automaticamente se estiver definida com o valor "True". É isso!

No próximo tópico o utilizaremos para inserir uma barra de progresso na tela de Splash.


HARDWARE

Entendendo o seu computador

O que há dentro do meu computador?

Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.

  • Gabinetes

  • Placas-Mãe

  • Processadores

  • Memória

  • Fontes

  • Drives Ópticos

  • Discos Rígidos

  • SSD

  • Placas de Som

  • Placas de Vídeo

Você Sabia?

O Playstation só nasceu porque uma parceria entre Sony e Nintendo, para desenvolver uma unidade de CD para o Super Nintendo, fracassou. Clique aqui e saiba mais.


O épico jogo River Raid, do Atari, foi desenhado e boa parte de sua programação foi feita por uma mulher: Carol Shaw, uma excelente programadora e funcionária da Activision em 1982. Saiba mais sobre a história deste incrível jogo, aqui.


O personagem Mario surgiu pela primeira vez no mundo dos games em um jogo chamado Donkey Kong, lançado em 1981. Mario, que naquela época se chamava Jumpman, não era o personagem principal do jogo, mas ele se tornaria um dos mais famosos personagens do mundo dos games. Saiba mais.


O console Nintendo Entertainment System (NES), da Nintendo, detém o recorde de videogame mais clonado em todo o mundo. Já foram catalogados mais de 300 aparelhos diferentes capazes de reproduzir seus jogos! Saiba mais sobre ele aqui.


Até a primeira metade dos anos 90 era bastante comum que as trilhas sonoras dos games fossem criadas por mulheres e a responsável pelas músicas do clássico Street Fighter 2 foi Yoko Shimomura. Segundo ela, o ritmo "Tararirarin" da música tema do personagem Blanka, do Brasil, veio à sua cabeça enquanto ela estava no trem a caminho da Capcom.


O jogo Final Fantasy X para o Sony Playstation 2 vendeu, apenas no dia do seu lançamento, 1.455.732 cópias, estabelecendo um recorde de vendagem para as primeiras 24 horas de um game. Méritos da SquareSoft, que desenvolveu um excelente produto!


O famoso título Final Fantasy, da Square Enix, tem este nome exatamente porque se tratava da última esperança da empresa, que estava à beira da falência quando o lançou. Clique aqui e conheça detalhes dessa história.


Apenas no ano de 1982, o clássico Pac Man vendeu mais de 400 mil máquinas de fliperama em todo o mundo e recebeu cerca de 7 bilhões de moedas nestas máquinas. Saiba mais.


O primeiro jogo a fazer uso de uma Inteligência Artificial foi o Mouse in the Maze, criado em 1955, na União Soviética. Você pode saber mais sobre ele clicando aqui.


A IBM detém o recorde de patentes em um único ano, atingindo a marca de 4186 registros no ano de 2008. Clique aqui e saiba mais sobre esta gigante do mundo da tecnologia.


Nos primeiros oito dias após o lançamento do console Nintendo Wii foram vendidas 600 mil unidades. Isso equivale a quase um por segundo e estes incríveis números são referentes às vendas apenas nos EUA!


Em 1949 a revista Popular Mechanics fez uma previsão para o futuro, dizendo: "Um dia os computadores pesarão menos do que 1,5 tonelada". E pensar que temos smartphones capazes de realizar milhões de vezes mais operações do que os computadores daquela época.


As primeiras máquinas de fliperama do mundo a utilizarem moedas, chamadas de Galaxy Game, custavam mais de 20 mil dólares para serem produzidas. Saiba mais sobre elas aqui.


A empresa Universal City Studios, detentora dos direitos autorais do King Kong, processou a Nintendo logo após o lançamento de Donkey Kong, pois segundo ela, o game violava os seus direitos. Ela venceu o processo e recebeu da Nintendo uma indenização de quase 2 milhões de dólares.


Instalar vários aplicativos com o mesmo propósito, como editores de texto, reprodutores de músicas ou vídeos e até programas antívirus sobrecarregam o seu sistema operacional e ainda ocupam espaço desnecessário em seu HD. Tenha apenas um bom programa para cada função.


A primeira versão do clássico Mega Man, para Nintendo 8 bits, tem seu recorde de pontos estabelecido em 03/11/2006, por David Archey, que cravou 2.396.700 pontos, terminando o jogo.