Sunteți pe pagina 1din 2

Lazarus - Criando um Splash

Splash Splash uma janela de abertura de um programa. Vamos aprender como criar uma dessas em Lazarus. Para isso crie uma nova aplicao. Podemos dar o nome de frmPrincipal a esse form e salvar tudo. Para a unit d o nome u_principal e ao projeto d o nomeSplash. Agora inclua mais um form na aplicao. Esse ser o splash. Na propriedade Name digite frmSplash. Salve e digite u_splash no nome da unit. Na propriedade FormStyle desse form selecione fsSplash. Selecione a opo de menu Project -> Project Options. Localize a aba Forms, selecione frmSplash e, usando a seta, passe-o para a caixa da direita. Isso define que o form no ser criado automaticamente. Coloque um TImage em frmSplash e selecione uma imagem adequada ao seu projeto. bom mudar Align para alClient e Stretch para True. Agora clique no boto View Units na barra de ferramentas. Isso abrir uma janela com todas as units da aplicao. Selecione o arquivo do projeto:splash.lpr.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

program splash; {$mode objfpc}{$H+} uses {$IFDEF UNIX}{$IFDEF UseCThreads} cthreads, {$ENDIF}{$ENDIF} Interfaces, // this includes the LCL widgetset Forms, crt, u_principal, LResources, u_splash { you can add units after this }; {$IFDEF WINDOWS}{$R splash.rc}{$ENDIF} begin {$I splash.lrs} Application.Initialize; frmSplash := TfrmSplash.Create(nil); frmSplash.Show; frmSplash.Update; Delay(1000); Application.CreateForm(TfrmPrincipal, frmPrincipal); frmSplash.Hide; frmSplash.Free; Application.Run; end.

Na seo uses acrescente Crt. Isso necessrio para invocar o procedimento Delay() na linha 21, que provoca um retardo para que o splash seja mostrado por um certo tempo. Explicando o cdigo apenas para as linhas que sero acrescentadas:

Linha 18 - cria o form frmSplash. Linha 19 - mostra o splash. Linha 20 - funciona como Repaint, atualizando a janela, seno no ser mostrada. Linha 21 - causa um retardo na execuo do programa. Linha 23 - oculta o splash. Linha 24 - libera a memria ocupada pelo splash.

S-ar putea să vă placă și