Upload
dyegohitalo
View
192
Download
13
Embed Size (px)
Citation preview
Cadastro de contatos pessoais - Parte 1
Linguagem: VB6
Requisitos:
Microsoft Access previamente instalado no computador.
E aí pessoal!
Nesta pequena série de artigos, veremos como criar uma aplicação que gerencie seus
contatos pessoais com base de dados Microsoft Access. A idéia é utilizar apenas
componentes nativos do Visual Basic 6.0, além de algumas imagens para dar um toque
especial no leiaute do Form.
Vejamos como estará nossa aplicação quando estiver finalizada.
Na primeira parte, iremos criar a estrutura da base de dados para armazenar os nossos
contatos. A versão do Office que estou utilizando no artigo é a 2003, portanto caso
utilize uma versão inferior / superior, a disposição dos menus e das opções estarão em
lugares diferentes.
Inicie o Microsoft Access 2003.
Crie um novo banco de dados em branco com o nome de Contatos.mdb. Para isso,
clique no menu Arquivo > Novo e em seguida na opção Banco de dados em branco.
Inicialmente, salve o arquivo na unidade C:\, para facilitar na continuação dos próximos
artigos.
Vamos criar uma tabela com o mesmo nome (Contatos) com a estrutura da imagem
abaixo. Clique no menu Design para ter acesso ao ambiente de construção da tabela.
Antes de salvar o arquivo, vamos definir o campo codigo como chave primária da
tabela. Clique com o botão direito do mouse sobre o campo, em seguida clique na opção
Chave primária.
Clique em Arquivo > Salvar como... e digite o nome da tabela.
Pronto! A primeira parte do artigo foi concluída.
Aguarde a continuação deste e de outros artigos do site.
https://sites.google.com/site/programacaoonline/family-blog/vb6/cadastro-de-contatos-
pessoais---parte-1
Cadastro de contatos pessoais - Parte 2
Linguagem: VB6
Requisitos:
Cadastro de contatos pessoais – Parte1
Saudações, jovens!
Na primeira parte do artigo, vimos como criar a estrutura da base de dados que irá
comportar os contatos pessoais. Pois bem, na parte 2 veremos como criar a interface
gráfica da aplicação usando somente os componentes nativos do VB6, além de algumas
imagens para dar um “toque especial” no leiaute.
Veja a imagem final da aplicação.
Antes de qualquer coisa, baixe o arquivo pack-imagens.rar que está na seção Anexos
deste artigo (que se encontra no final da página). Ao descompactar o arquivo “.rar”,
perceba que disponibilizamos 6 imagens (5 ícones e um “menu.jpg”).
Abra o Visual Basic 6 e crie um novo projeto do tipo Standard EXE.
Vamos aumentar as dimensões do Form para que o mesmo tenha a mesma aparência
que a imagem final. Altere as propriedades conforme a tabela abaixo:
Height 6285
Width 10140
Caption Programação On-Line
Font Trebuchet MS
Inclua um controle PictureBox no Form e altere a propriedade Name para picMenu. Na
propriedade Picture, clique sobre o botão “...” e localize a imagem “menu.jpg” que está
no “pack-imagens”.
Altere a propriedade BackColor do Form para a cor branca.
Vamos salvar o projeto. Clique no menu File > Save Project As... e salve o projeto em
uma pasta com o nome de “Contatos”. Continuando na construção do menu lateral,
inclua um componente Image e um Label sobre o Picture picMenu. Altere as
propriedades destes controles conforme a tabela abaixo:
Controle Propriedade Valor
Image Name imgListar
PictureBox Picture Button Info.ico
Label Name lblListar
ForeColor &H00FF0000&
Font Sublinhado
O resultado deve ser semelhante o da imagem a seguir.
Refaça esta última operação por mais 2 vezes com base na tabela.
Controle Propriedade Valor
Image Name imgIncluir
Picture Button Add.ico
Label Name lblIncluir
ForeColor &H00FF0000&
Image Name imgSair
Picture Button Help.ico
Label Caption Programação On-Line
Font Negrito
O menu está praticamente pronto!
Vamos trabalhar agora na exibição dos contatos cadastrados. Adicione um Picture no
Form com a propriedade BackColor na cor branca e Name igual a picListar. Dentro
deste controle, acrescente alguns outros controles conforme os dados abaixo:
Número Controle Propriedade Valor
1 Label Font Negrito (Tamanho 14)
Caption Cadastro de contatos pessoais
2 Label Caption Listagem de contatos
cadastrados
3 ListView Name lstContato
FullRowSelect True
GridLines True
4 Image Name imgExcluir
Picture Button Close.ico
5 Label Name lblExcluir
ForeColor &H00FF0000&
Font Sublinhado
Por fim, vamos trabalhar na parte visual do cadastro. Adicione um outro controle
Picture no Form com a propriedade BackColor na cor branca e Name igual a picIncluir.
Dentro deste novo controle, acrescente alguns outros com base na tabela a seguir:
Número Controle Propriedade Valor
1 Label Caption Cadastro de contatos pessoais
Font Negrito (Tamanho 14)
2 Label Caption Código
3 TextBox Name txtCodigo
4 Label Caption Nome
5 TextBox Name txtNome
6 Label Caption Endereço
7 TextBox Name txtEndereco
8 Label Caption Telefone
9 TextBox Name txtTelefone
10 Label Caption E-mail
11 TextBox Name txtEmail
12 Image Name imgSalvar
Picture Button Play.ico
13 Label Name lblSalvar
ForeColor &H00FF0000&
Caption Salvar
Font Sublinhado
É isso. O leiaute da aplicação já está pronto.
No próximo artigo, iremos direto para a parte lógica do projeto.
Até o próximo artigo (e último desta série).
https://sites.google.com/site/programacaoonline/family-blog/vb6/cadastro-de-contatos-
pessoais---parte-2
Cadastro de contatos pessoais - Parte 3
Linguagem: VB6
Requisitos:
Cadastro de contatos pessoais - Parte 1
Cadastro de contatos pessoais - Parte 2
Saudações, pessoal!
Nesta terceira e última parte do artigo, vamos codificar nossa aplicação de cadastro de
contatos pessoais. Lembrando que no projeto só utilizamos controles nativos do VB6,
além de algumas imagens para compor nosso leiaute. Antes de mais nada, vamos
renomear os controles do tipo Label, porque eles serão os responsáveis por acionar as
rotinas básicas do cadastro.
Caption Name
Excluir lblExcluir
Salvar lblSalvar
Listar contatos cadastrados lblListar
Incluir contato lblIncluir
Sair lblSair
Continuando, vamos adicionar um Module no projeto para alocar as principais rotinas
de persistência no banco de dados. Clique no menu Project > Add Module e mantenha
o nome de item como Module1.
Copie as linhas de código abaixo e cole no escopo do Module1.
Private con As ADODB.Connection Public rs As ADODB.Recordset
Private Sub Conectar() Set con = New ADODB.Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" &
App.Path & "\Contatos.mdb" End Sub
Public Sub Desconectar() con.Close Set con = Nothing
End Sub
Public Function PesquisarContato(Valor As String) As
Boolean Dim Criterio As String
Call Conectar Set rs = New ADODB.Recordset If Trim(Valor) <> "" Then Criterio = " WHERE Codigo=" & Valor
End If rs.Open "SELECT * FROM Contatos" & Criterio, con,
adOpenKeyset, adLockOptimistic
If Not rs.EOF Then PesquisarContato = True Else PesquisarContato = False
End If End Function
Public Sub InserirContato(Nome As String, Endereco As
String, Telefone As String, Email As String) Call Conectar con.Execute "INSERT INTO Contatos(Nome, Endereco, Telefone,
Email) " & _
"VALUES ('" & Nome & "', '" & Endereco & "', '"
& Telefone & "', '" & Email & "')" Call Desconectar
End Sub
Public Sub AtualizarContato(Codigo As String, Nome As
String, Endereco As String, Telefone As String, Email As
String)
Call Conectar con.Execute "UPDATE Contatos " & _ "SET Nome='" & Nome & "', " & _ "Endereco='" & Endereco & "', " & _
"Telefone='" & Telefone & "', " & _ "Email='" & Email & "' " & _ "WHERE Codigo=" & Codigo
Call Desconectar End Sub
Public Sub ExcluirContato(Codigo As String) Call Conectar
con.Execute "DELETE FROM Contatos WHERE Codigo=" & Codigo Call Desconectar End Sub
Precisamos agora, escrever as rotinas no View Code do Form1. Selecione o formulário e
pressione a tecla F7 para termos acesso ao editor de códigos. Copie as linhas abaixo e
cole no editor.
Private Sub Form_Load() Call MostrarPainel(0) Call ListarContato End Sub
Private Sub imgIncluir_Click() Call MostrarPainel(1) End Sub
Private Sub imgListar_Click() Call MostrarPainel(0) End Sub
Private Sub imgSair_Click()
End End Sub
Private Sub lblExcluir_Click()
If lstContato.ListItems.Count > 0 Then If MsgBox("Confirma a exclusão do contato '" &
lstContato.SelectedItem.ListSubItems(1).Text & "'?",
vbYesNo, "Excluir") = vbYes Then
Call
Module1.ExcluirContato(lstContato.SelectedItem.Text) Call MostrarPainel(0)
Call ListarContato End If End If End Sub
Private Sub lblIncluir_Click() Call MostrarPainel(1) Call LimparForm txtCodigo = "<Novo>"
End Sub
Private Sub lblListar_Click() Call MostrarPainel(0)
Call ListarContato End Sub
Private Sub lblSair_Click() If MsgBox("Deseja sair?", vbYesNo, "Sair") = vbYes Then
End End If End Sub
Private Sub ListarContato() Dim lst As ListItem If Module1.PesquisarContato("") = True Then
lstContato.ListItems.Clear Do While Not rs.EOF Set lst = lstContato.ListItems.Add(, ,
rs.Fields("codigo"))
lst.SubItems(1) = rs.Fields("nome") rs.MoveNext Loop Call Desconectar
End If End Sub
Private Sub PesquisarContato(Codigo As String)
Dim lst As ListItem If Module1.PesquisarContato(Codigo) = True Then lstContato.ListItems.Clear If Not rs.EOF Then
txtCodigo = rs.Fields("codigo") txtNome = rs.Fields("nome") txtEndereco = rs.Fields("endereco")
txtTelefone = rs.Fields("telefone") txtEmail = rs.Fields("email") Call MostrarPainel(1) End If
Call Desconectar End If End Sub
Private Sub MostrarPainel(p As Byte) If p = 0 Then picListar.Left = picIncluir.Left picListar.Visible = True
picIncluir.Visible = False lblListar.FontUnderline = True lblIncluir.FontUnderline = False Else
picListar.Visible = False picIncluir.Visible = True lblListar.FontUnderline = False
lblIncluir.FontUnderline = True End If End Sub
Private Sub lblSalvar_Click()
If txtCodigo = "<Novo>" Then Call Module1.InserirContato(txtNome, txtEndereco,
txtTelefone, txtEmail)
Else Call Module1.AtualizarContato(txtCodigo, txtNome,
txtEndereco, txtTelefone, txtEmail) End If Call MostrarPainel(0)
Call ListarContato End Sub
Private Sub lstContato_DblClick() If lstContato.ListItems.Count > 0 Then
Call PesquisarContato(lstContato.SelectedItem.Text) End If End Sub
Private Sub LimparForm()
txtNome = "" txtEndereco = "" txtTelefone = ""
txtEmail = "" End Sub
É isso. Só nos resta testar a aplicação e conferir o resultado.
O projeto com o código fonte está disponível abaixo na seção Anexos desta página.
Até a próxima!
https://sites.google.com/site/programacaoonline/family-blog/vb6/cadastro-de-contatos-
pessoais---parte-3