Aprenda e Faça Tecnologia simples e fácil
  • Registre-se
  • Home
  • Hardware
  • Redes
  • Downloads
  • Programação
  • RSS Feed
  • Twitter
  • Facebook

Tela de login usando vb.Net com visual Studio 2010 e banco de dados em access.

Por
Rubens Leme
– 24/11/2011Publicado em: Programação, VB.Net

Alguns alunos para os quais ministro aulas de vb.Net, quando esta próximos a  apresentação de seus trabalhos, correm contra o tempo e muitas vezes se deparam com um problema que não exigiria muito esforço em circunstancias normais, mas na atual circunstancia, a da entrega de um trabalho que valerá nota, este problema parece intransponível.

Enfim, que problema é esse? É o de desenvolver uma tela de login,  mas isso não chega a ser um problema, não é mesmo?

Quando tudo corre bem não, mas, quando esta tela de login passa a tomar muito tempo de desenvolvimento, isso sim se torna um problema.

Com intuito de ajudar os meus alunos do curso técnico de informática na ETEC e outros principiantes na arte de programar, desenvolvi uma tela de login simples e com conexão a banco de dados.

Usei o banco de dados access pela sua praticidade e facilidade de envio do mesmo junto com  o exemplo.

Busquei colocar o código todo em uma única tela, não o separando em módulos e assim facilitar a leitura.

Tenho recebido solicitações de diversos alunos de faculdades de TI e fico feliz em poder ajuda-lós, deixem seus comentários e tentarei responde-lós rapidamente na medida do possível.

segue a tela de exemplo do login:

tela de login

Esta é uma tela simples, com 3 labels (rótulos), 2 textbox (Campo texto) , 1 masktextbox (Campo texto c/ mascara), 2 botões  e 1 picturebox (p/ Inserir imagem).

Com eventos, temos :

Rotina no eventos de On change dos 2 textbox (txtLogin e txtSenha)

Rotina no evento de On Click dos botões  (OK e Cancel)

Rotina no Evento de On Load do formulário.

O Usuário cadastrado no banco de dados para teste é:

Usuário: rleme

Senha: leme123

Obs: não esqueça  de trocar o caminho do banco de dados na “String de conexão”

Baixe aqui o exemplo.

Após se logar com usuário valido, será aberta a tela principal do sistema.

tela principal

segue o código:

Imports System.Data.OleDb

Public Class frmLogin
Public conecta As New OleDbConnection
Public comando As New OleDbCommand
Public checar As OleDbDataReader

Public Sub Conectar()
conecta.Close()
conecta.ConnectionString = ("Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source= D:\ARQBACKUP\Meus documentos\Visual Studio 2010\Projects\2 Modulo\2 TC - Tela de login conexao access\banco\bdExemplo.mdb")
conecta.Open()
comando.Connection = conecta
End Sub
Public Function Desconectar()
conecta.Close()
Return True
End Function
Public Sub testaConexao()
Try
Conectar()
MsgBox("Conexao Realizada com sucesso")
Catch ex As Exception
Desconectar()
MsgBox("desconexao Realizada com sucesso")
End Try

End Sub
Private Sub frmLogin_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
btnOK.Enabled = False
btnCancel.Enabled = False
cmbTipo.SelectedIndex = 0
End Sub

Private Sub btnOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOK.Click
Conectar()
comando = New OleDbCommand("select senha_fun, usuario_fun, adm_fun from tabFuncionario where usuario_fun='" & _
txtUsuario.Text + "' and senha_fun='" + txtSenha.Text + "'", conecta)
checar = comando.ExecuteReader
Dim usuariobd As String = Nothing
Dim senhabd As String = Nothing

While checar.Read
If checar.Item("adm_fun") = "True" Then
MsgBox("Este usuario é administrador")
End If
senhabd = checar.Item("senha_fun").Trim
usuariobd = checar.Item("usuario_fun").Trim
End While

If usuariobd = txtUsuario.Text And senhabd = txtSenha.Text Then
Me.Visible = False
frmPrincipal.ShowDialog()

ElseIf usuariobd = Nothing Or senhabd = Nothing Then
MsgBox("Usuário ou Senha incorreto!", MsgBoxStyle.Information, "Erro")
txtUsuario.Text = ""
txtSenha.Text = ""
txtUsuario.Focus()
End If

checar.Close()
''Desconectar()
End Sub

Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancel.Click
Me.Close()
End Sub

Private Sub txtUsuario_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtUsuario.TextChanged
If txtUsuario.Text <> Nothing Or txtSenha.Text <> Nothing Then
btnOK.Enabled = True
btnCancel.Enabled = True
Else
btnOK.Enabled = False
btnCancel.Enabled = False
End If
End Sub

Private Sub txtSenha_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSenha.TextChanged
If txtUsuario.Text <> Nothing Or txtSenha.Text <> Nothing Then
btnOK.Enabled = True
btnCancel.Enabled = True
Else
btnOK.Enabled = False
btnCancel.Enabled = False
End If
End Sub
End Class

Tags: Access, Banco de Dados, Connection, Tela Login, VB.Net
Avatar of Rubens Leme

Sobre Rubens Leme

Trabalho com tecnologia da informação há 12 anos, amplo conhecimento em tecnologias de auxilio ao deficiente visual e 2 anos em tecnologias de desenvolvimento de software (Java, C e .Net); Graduado como Tecnólogo em sistema de informação Faculdades Oswaldo Cruz – 2004; Especialização em (SO Linux), Instituto de matemática da USP - 2001; Especialização em “BD Oracle”, ORACLE UNIVERSITY: Introduction to Oracle9i SQL e Administration Fundamentals I – 2003; Especialização em “Java SE”, Etec Martin Luther king – 2010; Especialização em “Programação em C”, Instituto de matemática da USP – 2011; Mais de 10 anos trabalhando e desenvolvendo atividades na Laramara - Associação Brasileira de Assistência ao Deficiente Visual, e atualmente coordena o setor de tecnologia da informação, o qual dá suporte para 283 colaboradores; Professor no Centro Estadual de Educação Tecnológica ”Paula Souza”, desde 2009.

18 Comments

  1. Responder
    Avatar of weverton weverton
    Publicado fevereiro 15, 2012 em 9:34 PM

    ola rubens me desculpe por perguntar mais uma
    vez mais creio que esta e a ultima duvida
    se caso um usuario esqueça a senha
    como faço para que ele possa recupera-la
    por exemplo ele digitar alguma informação e a senha aparecer ou
    coisa similar esta e minha ultima duvida agradeço
    pela ajuda

  2. Responder
    Avatar of weverton weverton
    Publicado fevereiro 10, 2012 em 9:02 PM

    ola tiago e rubens muito obrigado
    funcionou perfeitamente o
    programa salva sim o ultimo estado do formulário
    agora tenho
    uma única duvida
    como faço para impedir que sejam cadastrados usuários
    repetidos no banco de dados

    • Responder
      Avatar of Rubens Leme Rubens Leme
      Publicado fevereiro 15, 2012 em 10:06 AM

      Só tem um jeito, é você checar se o usuário já existe no banco de dados antes de fazer a inclusão dele.
      Qualquer duvida mande pra gente.
      abraço

  3. Responder
    Avatar of weverton weverton
    Publicado fevereiro 7, 2012 em 8:29 PM

    olá rubens
    consegui fazer a maioria do programa forma que eu queria
    porem ainda quero mais duas coisas
    que quando o usurário fechar o programa em seu próximo login ele continue de onde parou e caso algum usurário diferente faça login ele comece do formulário 1
    e queria saber também como faço para caso o usuário esqueça a senha tipo um ele digita as informações em uma textbox
    e depois o programa lhe mostre a senha
    aguardo sua ajuda

    • Responder
      Avatar of Rubens Leme Rubens Leme
      Publicado fevereiro 8, 2012 em 8:21 AM

      Olá Weverton
      Vamos para o 1º problema:
      Faça o seguinte ao efetuar o login o sistema verifica em um campo na tabela que tela o usuário esta e carrega esta tela caso contrario ele abre a tela inicial.
      Você pode fazer isso usando o nome da tela ou um numero para cada formulário.
      Aqui você vai usar o IF aninhado… onde após a confirmação do login ele entra em outro IF.
      Veja o que consegue de programação neste exemplo e me avise …

    • Responder
      Avatar of Tiago Machado Tiago Machado
      Publicado fevereiro 8, 2012 em 10:51 AM

      Bom dia Weverton!
      Vou tentar lhe ajudar! no momento não tenho nenhum exemplo pronto que possa lhe ajudar,

      Mas eu uma vez fiz uma agenda onde eu escolhia a cor de fundo dela e quando saia ela salvava a cor que eu tinha escolhido, vou tentar axar o codigo novamente na internet e lhe envio!
      posso demorar um pouco pois estou com um pouco de serviço acumulado, abraço

    • Responder
      Avatar of Tiago Machado Tiago Machado
      Publicado fevereiro 9, 2012 em 9:26 AM

      bom dia Weverton aqui tem um exemplo de como salvar
      o ultimo estado da form, axo que por isso voce pode chegar no caminho onde quer!
      http://www.macoratti.net/vbn5_scu.htm

      abraço

  4. Responder
    Avatar of weverton weverton
    Publicado fevereiro 6, 2012 em 11:38 AM

    olá rubens
    nao nunca fiz nenhum curso de programação
    porem me intereso muito nessa area tenho livros e busco coisas na internet
    para aprender cada vez mais
    tenho 17 anos

  5. Responder
    Avatar of weverton weverton
    Publicado fevereiro 6, 2012 em 11:04 AM

    ola Rubens fico grato pela
    atenção
    eu estou aprendendo a a mexer com o vb.net
    porem já fiz algumas pequenas aplicações como a uma tela de login sem conexão ao banco de dados
    e no momento estou criando um programa de perguntas e respostas
    para aprender um poço mais
    então vou especificar para assim fique mais fácil para que você possa me auxiliar
    o programa já esta quase todo pronto
    as perguntas já estão feitas
    agora queria queria que a tela de login tenha conexão com um banco de dados e nessa parte que não estou conseguindo
    fazer
    então e gostaria também que quando um usuário fecha-se a aplicação no próximo login ele continua-se do mesmo formulário que fechou no ultimo login
    ex: tem um usurário (A) e (B) cadastrados
    e se o usurário (A) já estiver no formulário 4 e feche a aplicação depois que fizer login novamente ele continue do formulário 4 e caso o (B) que faça login ele comece do formulário 1 se for possível fazer isso aguardo ansiosamente a sua ajuda
    muito obrigado
    e se desejar posso lhe enviar a aplicação também

  6. Responder
    Avatar of weverton weverton
    Publicado fevereiro 4, 2012 em 2:00 PM

    ola caro rubens deesculpe por mais uma pergunta
    gostaria
    de saber como fazer para cadastrar novos usuários.
    como exemplo
    criar um botao no formulario para criar um novo usuario e depois esse usuario seja capaz de fazer login
    aguardo sua ajuda

    • Responder
      Avatar of Rubens Leme Rubens Leme
      Publicado fevereiro 6, 2012 em 9:16 AM

      Olá Weverton
      Não precisa se desculpar, pode fazer quantas perguntas achar necessário.
      É possível sim fazer um cadastro de usuário com tela pra adição de usuários novos,
      sendo que depois este usuário possa fazer login.
      Você já trabalhou com VB.Net antes?
      Esta desenvolvendo algum sistema?

  7. Responder
    Avatar of weverton weverton
    Publicado fevereiro 1, 2012 em 7:04 PM

    olá
    gostaria de saber como faço
    para que no campo senha apareça
    aquelas bolinhas pretas ou asteriscos ao invés de
    aparecer a senha mesmo
    Ex: a senha e 1234 e ao invés de aparecer os números
    quero que apareça ou (****) qualquer outra coisa que esconda a senha
    estou montando painel de login e depois irei conecta-lo ao banco de dados desde já agradeço

    • Responder
      Avatar of Rubens Leme Rubens Leme
      Publicado fevereiro 1, 2012 em 9:42 PM

      Olá Weverton
      selecione o textbox que vai usar pra senha, vá até properties na opção
      PasswordChar coloque (*)

      Veja Print senha

      Duvidas me escreva
      abraço

  8. Responder
    Avatar of Alexandre Tavares Silva Alexandre Tavares Silva
    Publicado janeiro 5, 2012 em 7:05 PM

    Eduardo, eu não sei qual foi o seu erro, mas uma coisa que acontece muito se vc não tomar cuidado é o erro devido a string de conexão (conecta.ConnectionString = (“Provider=Microsoft.Jet.OLEDB.4.0;” & _
    “Data Source= D:\ARQBACKUP\Meus documentos\Visual Studio 2010\Projects\2 Modulo\2 TC – Tela de login conexao access\banco\bdExemplo.mdb”). No data source vc deve apontar o caminho correto onde está salvo o seu banco de dados.

  9. Responder
    Eduardo Santos
    Publicado janeiro 4, 2012 em 1:01 PM

    Segui o seu tutorial, mas deu erro aqui. Sou iniciante em Visual Basic, e utilizo o Visual Studio 2010. Tem como me auxiliar? Estou cursando ainda Análise e Desenvolvimento de Sistemas.
    Desde já, muito obrigado.

    • Responder
      Avatar of Tiago Machado Tiago Machado
      Publicado janeiro 4, 2012 em 2:32 PM

      Eduardo oque esta dando de errado?

      onde esta ocorrendo seu erro?

    • Responder
      Avatar of Rubens Leme Rubens Leme
      Publicado janeiro 4, 2012 em 5:31 PM

      Olá Eduardo,
      Como tiago disse, envie o erro que esta acontecendo para te ajudarmos.

      abraço

    • Responder
      Avatar of Tiago Machado Tiago Machado
      Publicado janeiro 5, 2012 em 12:20 PM

      Eduardo eu fiz aqui em casa como segue o exemplo e não ocorreu nenhum erro!

      tenta baixar o exemplo e conferir os codigos se voce não deixou passar alguma “Virgula”

      aguardo!

Deixe um Comentário Cancelar resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

*

*

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

  • Páginas
    • Atividades
    • Grupos
    • Home
    • Membros
    • Streams
    • Downloads
  • Ativos Recentemente
    Profile picture of Rubens Leme
    Profile picture of Wenderson Buzim
    Profile picture of jair isidoro
    Profile picture of weverton
    Profile picture of Fernando
    Profile picture of Edson
    Profile picture of Rafael Evangelista
  • Categorias
    • Bancos de Dados
    • Gratuitos
      • 3D
    • Hardware
      • Bateria
      • CD's e DVD's
      • Energia
        • Filtro de linha
      • Estabilizador
      • HD
      • Notebooks
        • Portáteis
      • Periféricos
      • Placa Mãe
      • Processador
    • Notícias
      • Informações
        • Blog
    • Novidades
    • Programação
      • Delphi
      • Java
      • VB.Net
    • Redes
    • Redes Sociais
    • Sistemas
      • Editores
        • Imagem
      • Windows
    • Software
      • Antivírus
      • Atualizações
        • Pack
      • Áudio e Vídeo
      • Drivers
    • Tutoriais
  • on-line
    There are no users currently online
  • Google
    Busca personalizada

  • Membros
    Newest | Active | Popular
    • Profile picture of Rubens Leme
      Rubens Leme
      active 1 day, 6 hours ago
    • Profile picture of Wenderson Buzim
      Wenderson Buzim
      active 1 day, 15 hours ago
    • Profile picture of jair isidoro
      jair isidoro
      active 1 day, 15 hours ago
    • Profile picture of weverton
      weverton
      active 3 days, 8 hours ago
    • Profile picture of Fernando
      Fernando
      active 5 days, 9 hours ago
  • siga-me


  • Posts Recentes
    • Anonymous Cria Site De Upload, e Já Está em Português
    • Criando instaladores profissionais com Inno Setup
    • Internautas protestam após site de compartilhamento de arquivos Megaupload ser retirado do ar e seus criadores presos.
    • Rotina de conexão com vb.Net e banco de dados Access com diversas strings de conexão.
    • Tela de login usando vb.Net com visual Studio 2010 e banco de dados em access.
    • Como preencher um combobox com valor de uma tabela no vb.NET 2010.
    • Rotina em vb.Net de inclusão no banco de dados, que pode ser usada com diversas tabelas.
    • Como criar um pop-up usando linguagem JavaScript.
    • Modulo com diversas rotinas de conexão com banco de dados SQLServer
    • Usando o HyperTerminal no Windows 7
  • Computadores
    • Portáteis
    • Periféricos
    • Bateria
    • Estabilizador
    • Filtro de linha
    • Fontes
  • Matérias Recentes
    • Anonymous Cria Site De Upload, e Já Está em Português
    • Criando instaladores profissionais com Inno Setup
    • Internautas protestam após site de compartilhamento de arquivos Megaupload ser retirado do ar e seus criadores presos.
    • Rotina de conexão com vb.Net e banco de dados Access com diversas strings de conexão.
  • Programação
    • Bancos de Dados
    • Delphi
    • Java
    • VB.Net
  • Redes
    • Redes
    • Rede 3G
    • Rede 4G
    • Wi-Fi
  • Meta
    • Registrar-se
    • Login
    • Posts RSS
    • RSS dos comentários
    • WordPress.org

Sobre o Tema Arras para WordPress

Copyright Aprenda e Faça. Todos os Direitos Reservados.

Aprenda e Faça
  • Log In
  • Sign Up
  • Visit
    • Random Member
    • Random Group