1
6-ABRA O MICROSOFT ACCESS, CRIE UM BANCO DE DADOS COM O NOME=
DADOS.MDB E FIQUE ATENTO ONDE ESTÁ SALVANDO-O.
7-CRIE UMA TABELA NO MODO ESTRUTURA COM OS SEGUINTES CAMPOS:
OBS: O CAMPO ID DEVE SER DO TIPO AUTONUMERAÇÃO, POIS NUMERA SOZINHO.
10-CLIQUE EM NEXT
11- CLIQUE EM NEW CONNECTION...
2
12-CLIQUE NA GUIA PROVEDOR, ESCOLHA MICROSOFT JET 4.0 OLE DB PROVIDER
13-CLIQUE EM AVANÇAR
14-NA GUIA CONEXÃO, NO ITEM NUMERO 1, CLIQUE NO BOTÃO ... E LOCALIZE SEU
BANCO DE DADOS.
3
15-CLIQUE NO BOTÃO TESTAR CONEXÃO. DEVERÁ APARECER A SEGUINTE MENSAGEM:
17-NA PRÓXIMA TELA DEIXE MARCADO USE SQL STATEMENTS E CLIQUE EM NEXT
4
18-CLIQUE NO BOTÃO QUERY BUILDER
5
23-CLIQUE EM ADVANCED OPTIONS E CERTIFIQUE QUE AS OPÇÕES GENERATE
INSERT, UPDATE AND DELETE STATEMENTS E USE OPTIMISTIC CONCURRENCY
ESTEJAM MARCADAS.
24-CLIQUE EM OK
25-CLIQUE EM FINISH
26-O ADAPTADOR E A CONEXÃO DEVERÃO APARECER NO SEU FORMULÁRIO:
27-AGORA VAMOS CRIAR O DATASET, PARA ISTO CLIQUE COM O BOTÃO DIREITO DO
MOUSE NO ADAPTADOR QUE ESTÁ NA PARTE INFERIOR DO SEU FORMULÁRIO E
CLIQUE EM GENERATE DATASET.
6
29-ESCOLHA NEW, DIGITE DSCLIENTES E CLIQUE EM OK.
30-O DATA SET IRÁ APARECER AO LADO DA CONEXÃO, RENOMEIE –OS COM OS
SEGUINTES NOMES:
DATA CONNECTION
PERMITE DEFINIR UM DATA PROVIDER (DATABASE ENGINE) E NOME DO BANCO DE DADOS A SER
ACESSADO. FORNECE AS PROPRIEDADES PARA ESTABELECER E MODIFICAR O CÓDIGO DO
USUÁRIO, A SENHA E CONFIGURAÇÕES DA CONEXÃO. UM OBJETO DATA CONNECTION É
INCLUÍDO AUTOMATICAMENTE NO SEU PROJETO QUANDO VOCÊ INCLUI UM DATA ADAPTER.
DATASET
ARMAZENA OS REGISTROS DA TABELA EM UM BANCO DE DADOS DESCONECTADO (CACHE
LOCAL). O DATASET NOS DÁ ACESSO AOS REGISTROS EM UMA TABELA NA QUAL O
DATAADAPTER ESTA LIGADO. IREMOS VINCULAR CAIXAS DE TEXTOS E OUTROS CONTROLES AOS
CAMPOS EXPOSTOS PELO DATASET DE MANEIRA A PODER VISUALIZAR OS REGISTROS DA
TABELA.
32-NÓS PODEMOS VISUALIZAR OS DADOS DA TABELA DO BANCO. PARA ISTO CLIQUE
COM O BOTÃO DIREITO DO MOUSE NO ADAPTADOR E ESCOLHA PREVIEW DATA
33-NA JANELA DATA ADAPTER PREVIEW, CLIQUE EM FILL DATASET, VEJA COMO OS
DADOS IRÃO SER VISUALIZADOS:
7
34-FECHE O PREVIEW, AFINAL SÓ DÁ PRA VISUALIZAR CADASTROS JÁ EFETUADOS E
VOLTAMOS AO FORM.
35- INSIRA OBJETOS DE MODO QUE O FORM FIQUE ASSIM:
OBS: SÃO 9 LABEL, 6 TEXTBOX E 9 BUTTON
LABELS
OS LABELS NÃO DEVEM SER NOMEADOS, SOMENTE AJUSTADOS O TEXT COMO VISTO
NA FIGURA ACIMA.
EM CIMA DO BOTÃO CANCELA E INCLUIR, EXISTEM 3 LABELS, SENDO QUE O
PRIMEIRO TERÁ O NAME: LBLREG E TEXT EM BRANCO, O SEGUNDO TERÁ O TEXT: DE E
O TERCEIRO TERÁ O NAME: LBLTOTAL E O TEXT EM BRANCO.
TEXTBOXS
OS TEXTBOXS DEVERÃO SER TODOS RENOMEADOS, POIS SÃO NELES QUE OS DADOS
SERÃO EXIBIDOS. OUTRO DETALHE É QUE O TEXT DE TODOS ELES DEVERÁ SER EM
BRANCO.
VAMOS AOS NAMES EM ORDEM SEQUENCIAL: TXTID, TXTNOME, TXTENDERECO,
TXTUF, TXTTELEFONE E TXTNASCIMENTO.OUTRA PROPRIEDADE MUITO IMPORTANTE
QUE DEVERÁ SER AJUSTADA É O DATABINDINGS, QUE É UMA DAS PRIMEIRAS
PROPRIEDADES E SERVE PARA EXIBIR OS DADOS DO BANCO DE DADOS NOS
OBJETOS:
8
COLOQUE EM CADA TEXTBOX O DATABILDINGS CORRESPONDENTE A ELE NA TABELA
DO BANCO DE DADOS. POR EXEMPLO, NO TXTID, O TEXT DO DATABILDINGS SERÁ ID.
COLOQUE EM TODOS OS BUTTONS O READONLY: TRUE.
BUTTONS
OS BOTÕES DEVERÃO SER RENOMEADOS DA SEGUINTE FORMA, EM ODEM
SEQUENCIAL DA ESQUERDA PARA A DIREITA: BTNINICIO, BTNANTERIOR,
BTNPROXIMO E BTNFIM. ESTES BOTÕES ESTÃO COM A PROPRIEDADE IMAGE ATIVADA
E POSSUEM OS ICONES CORRESPONDENTES A CADA AÇÃO, PROCURE ALGUM ÍCONE
PARA OS SEUS. OS DEMAIS BOTÕES: BTNEDITAR, BTNSALVAR, BTNCANCELAR,
BTNINCLUIR E BTNEXCLUIR. AJUSTES OS TEXTS DE CADA UM CONFORME
NECESSÁRIO, EXEMPLO: O BTNEXCLUIR FICARÁ COM TEXT: EXCLUIR E ASSIM POR
DIANTE.
Sub Local()
‘Exibe nos Label a posição atual e a Total
Me.Lblreg.Text = Me.BindingContext(Me.DsClientes, "Clientes").Position + 1
'A propriedade Count de BindingContext é sempre igual ao total de registros
Me.Lbltotal.Text = Me.BindingContext(Me.DsClientes, "Clientes").Count
End Sub
Sub TravarBotoes()
'Quando a propriedade Position é igual a propriedade Count menos 1 (-1)
‘alcançamos o último registro
' Vamos desabilitar os botões btnProximo e btnFim
‘O _ (Underline) permite continuar um código na outra linha.
‘Mas não esqueça de dar um espaço antes dele
If Me.BindingContext(Me.DsClientes, "Clientes").Position = _
Me.BindingContext(Me.DsClientes, "Clientes").Count - 1 Then
Me.BtnProximo.Enabled = False
Me.BtnFim.Enabled = False
Else 'Senão habilita os botões btnProximo e btnFim.
Me.BtnProximo.Enabled = True
Me.BtnFim.Enabled = True
End If
9
Me.BtnAnterior.Enabled = True
Me.BtnInicio.Enabled = True
End If
End Sub
CÓDIGO DO BTNPRÓXIMO_CLICK
CÓDIGO DO BTNANTERIOR_CLICK
‘Volta um registro
Me.BindingContext(Me.DsClientes, "Clientes").Position -= 1
'chama a função que verifica os botões
TravarBotoes()
'chama a função que indica em que registro estamos
Local()
CÓDIGO DO BTNINICIO_CLICK
CÓDIGO DO BTNFIM_CLICK
10
Me.BindingContext(Me.DsClientes, "Clientes").Count - 1
'chama a função que verifica os botões
TravarBotoes()
'chama a função que indica em que registro estamos
Local()
CÓDIGO DO BTNINCLUIR_CLICK
CÓDIGO DO BTNEDITAR_CLICK
11
Me.TxtTelefone.ReadOnly = False
'poe o foco no textobx nome
Me.TxtNome.Focus()
CÓDIGO DO BTNEXCLUIR_CLICK
CÓDIGO DO BTNCANCELAR_CLICK
‘Manipula os botões
Me.BtnEditar.Enabled = True
Me.BtnIncluir.Enabled = True
Me.BtnCancelar.Enabled = False
Me.BtnSalvar.Enabled = False
Me.BtnExcluir.Enabled = True
‘Cancel Edit cancela a edição ou um novo cadastro
Me.BindingContext(Me.DsClientes, "Clientes").CancelCurrentEdit()
‘Desabilita as caixas
Me.TxtNome.ReadOnly = True
Me.TxtEndereco.ReadOnly = True
Me.TxtUf.ReadOnly = True
Me.TxtNascimento.ReadOnly = True
Me.TxtTelefone.ReadOnly = True
Me.BtnInicio.Enabled = True
12
Me.BtnAnterior.Enabled = True
Me.BtnProximo.Enabled = True
Me.BtnFim.Enabled = True
‘Chama as funções
Local()
TravarBotoes()
CÓDIGO DO BTNSALVAR_CLICK
13
‘ Exibe uma mensagem de erro
MsgBox("Houve algum erro na hora de salvar o registro", _
MsgBoxStyle.Information, "Erro Salvando")
End If
OBS: PERCEBA COMO FOI UTIL UTILIZAR AS FUNÇÕES. IMAGINA O TANTO DE CÓDIGO
QUE ECONOMIZAMOS, POIS CASO ELAS NÃO EXISTISSEM DEVERIAMOS FAZER O
CÓDIGO DE CADA FUNÇÃO DENTRO DE CADA BLOCO DE CÓDIGO.
14