quinta-feira, 6 de novembro de 2014

Tela de Login Simples e Sem Botões Em Lazarus

Olá, Boa Noite, Galera...

Hoje vou mostrar como criar uma tela de login simples no Lazarus(Versão 1.2.6) apenas usando dois "Edits" e um "Form".

Então vamos trabalhar???

1º) Crie um novo projeto e salve-o em uma pasta a sua escolha.

2º) Agora vamos criar um segundo formulário(Form de Login) e salvar na mesma pasta.

3º) Vamos alterar as seguintes propriedades deste Form de Login:
     FormStyle para bsNome -> Tirar as bordas do formulário;
     Position para poScreenCenter -> Centraliza o formulário na tela.

4º) Vamos adicionar 02(dois) "Edits" em nosso formulário.


5º) No evento "OnKeyPress" do Edit1 coloque o seguinte código:
   if (key = #13) then
   begin
     key := #0;
     Edit2.SetFocus;
   end;

6º) No evento "OnKeyPress" do Edit2 coloque o seguinte código:
   if (key = #13) then
   begin
     key := #0;
     login(Edit1.Text, Edit2.Text); // Chama a procedure de login
   end;

7º) Declare uma procedure chamada login onde passaremos dois parâmetros,(login e senha).
   public
     { public declarations }
     procedure login(usuario, senha : String);

8º) Vamos declarar a Unit do Form principal, logo abaixo de "Implementation"
   uses
     uPrincipal;

9º) Na área de implementação vamos codificar nossa procedure de login. 
   procedure TForm2.login(usuario, senha: String);
   begin
     // Função para verificar login e senha
     // Verifica se o login for válido 
     // (pode ser uma consulta no banco de dados)
     // Aqui vou apenas testar se o login e senha são iguais.
     if (usuario = senha) then
     begin
       frmPrincipal.Enabled := True;  // Ativa o Form Principal
       Form2.Hide;  // Esconde o form de login
     end
     else
     begin
       ShowMessage('Usuário e/ou Senha não confere...');
       Edit1.SetFocus;
     end;
   end; 

10º) Já no Form principal, na seção de "uses" temos que declarar a unit do Form de login.

11º) No evento "OnShow" do Form principal vamos colocar o seguinte código:
   frmPrincipal.WindowState := wsMaximized;
   frmPrincipal.Enabled := False;
   Form2.ShowModal;

12º) Agora basta compilar e efetuar os devidos testes.

    OBS.: Para fins de compatibilidade, esta dica foi escrita usando Lazarus versão 1.2.6.


Esta foi a dica de hoje, se for útil, comentem.

Se você tem uma dica interessante, preencha o Formulário de contato do lado direito da página e nos envie.

Atenciosamente
Dica Chave.