Criar tela Splash C#

Hoje vou explicar um modo simples de criar uma tela Splash (que vai sumindo aos poucos enquanto a aplicação inicia) bem legal.

Primeiro crie uma nova WindowsForm que será sua tela Splash, adicione um Timer e configure as propriedades de acordo com a imagem abaixo.


No evento Load da sua Form principal chame a formSplash com o seguinte código:
formSplash splash = new formSplash();
splash.ShowDialog();

Usando o ShowDialog o usuário não poderá mexer em nada até que a tela Splash suma completamente.
Agora na formSplash, de dois cliques sobre o Timer para adicionar rotinas ao evento Tick. O que você inserir neste evento será executado a cada 100 milissegundos (configurado nas propriedades da imagem acima), até que o Timer seja desabilitado.

No evento Tick digite o seguinte código:

Opacity -= 0.05;
if (Opacity <= 0)
{
tmrSplash.Enabled = false;
this.Close();
}

A opacidade da janela é sempre 1 por padrão. O código fará com que a cada 100 milissegundos ela seja diminuida em 0.05, ou seja, em 2 segundos a tela desaparecerá e a aplicação principal será habilitada.


Dicas para fazer uma tela Splash legal:
  • Para criar uma tela Splash sem os controles de minimizar, maximizar, fechar, bordas da form e etc, você pode mudar a propriedade FormBorderStyle da form Splash para None.
  •  Para uma imagem ocupar totalmente a form, adicione um PictureBox e deixe a propriedade Dock como Fill, conforme figura abaixo.


Espero ter ajudado.
Abraço

2 comentários:

Não esqueça de enviar um comentário. Isto motiva o autor a continuar postando e também é uma forma de agradecimento