Visual Basic 5.0 (exercícios)
-
Upload
adriano-aragao -
Category
Documents
-
view
172 -
download
15
Embed Size (px)
Transcript of Visual Basic 5.0 (exercícios)

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 39
Exercício 4: Calculadora
Fazer uma calculadora que tenha as seguintes operações: soma,subtração, divisão e multiplicação.
Tela do Exercício.
Private Sub cmdcalcular_Click() If OptSoma.Value = True Then txtresult = Val(txtprim_num) + Val(txtseg_num) ElseIf OptSub.Value = True Then txtresult = Val(txtprim_num) - Val(txtseg_num) ElseIf OptMult.Value = True Then txtresult = Val(txtprim_num) * Val(txtseg_num) ElseIf OptDiv.Value = True Then If Val(txtseg_num) <> 0 Then txtresult = Val(txtprim_num) / Val(txtseg_num) Else MsgBox "Divisão por Zero!" End If End IfEnd Sub
Resolução do Exercício:
FormCaption =Formulário do ExercícioName = Frmexerc
Frame Caption = Operações Name = Frame2
TextBox Name = txtresult Text = (BRANCO)
TextBox Name = txtseg_num Text = (BRANCO)
HScrollBar Name = hScrPrim_valor LargeChange = 10 Max = 1000
HScrollBar LargeChange = 10 Max = 1000 Name = HScrSeg_valor
CommandButton Caption = &Calcular Name = cmdcalcular
CommandButton Caption = &Sair Name = cmdsair
OptionButton Caption = Subtração Name = OptSub
OptionButton Caption = Soma Name = OptSoma
OptionButton Caption = Divisão Name = OptDiv
OptionButton Caption = Multiplicação Name = OptMult
TextBox Name = txtprim_num Text = (BRANCO)
Label AutoSize = True Caption = Primeiro Valor: Name = lblprim_valor
Label AutoSize = True Caption = Resultado da Operação: Name = lblresult
Label AutoSize = True Caption = Segundo Valor: Name = lblseg_valor
Private Sub hScrPrim_valor_Change() txtprim_num = hScrPrim_valor.ValueEnd Sub
Private Sub hScrPrim_valor_Scroll() txtprim_num = hScrPrim_valor.ValueEnd SubPrivate Sub HScrSeg_valor_Change() txtseg_num = HScrSeg_valor.ValueEnd Sub
Private Sub HScrSeg_valor_Scroll() txtseg_num = HScrSeg_valor.ValueEnd Sub
Private Sub cmdsair_Click() EndEnd Sub

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 40
Criando Efeitos Especiais em Forms
No VB, existem controles que permite a criação de imagensgeométricas.
Controle Line é usado para criar uma linha em seuformulário (form). Suas propriedades mais importantes são:BorderWidth, BorderStyle, BorderColor, Visible.
Controle Shape é usado para desenhar uma figurageométrica em seu formulário (form). É possível selecionar o formatodessa figura. Os formatos são: retângulo, retângulo arredondado,quadrado, quadrado arredondado, oval, circular.
Suas principais propriedades são:
FillColor: permite definir a cor do objeto. (Preenchimento)FillStyle: permite definir o padrão do preenchimento.Visible: permite que você oculte ou exiba seu objeto.
NOTAS:
Teste!
Crie um novo Project (A partir do menu File, escolha a opção NewProject). No formulário, desenhe os controles Line, Shape e modifiquesuas propriedades.

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 41
Funções do Mouse
O VB permite que você utilize o controle Image para criar botõesde comando no estilo da barra de ferramentas em seus programas.Para criar esses botões, pode-se usar os seguintes eventos:
MouseDown: este evento detecta o pressionar do mouse.MouseMove: detecta qualquer movimento com o mouse.MouseUp: detecta quando o usuário libera o botão do mouse.
Os botões possuem três estados:
Não pressionado - esse é o estado normal do botão. Não estáselecionado.
Pressionado - esse é o estado do botão que está selecionado ouestá ativo.
Desativado - é o estado utilizado quando um botão não estádisponível para o programa.
Mais algumas propriedades da Caixa Texto
FontBold: define se o texto da caixa de texto deve ser negrito ounão. Valor que recebe é True se for configurar o texto para negrito eFalse, caso contrário.
FontItalic: define se o texto da caixa de texto deve ser itálico ounão. Valor que recebe é True se for configurar o texto para itálico eFalse, caso contrário.
FontUnderline: define se o texto da caixa de texto deve sersublinhado ou não. Valor que recebe é True se for configurar o textopara sublinhado e False caso contrário.
Image Box
Tag: utiliza-se esta propriedade para identificar um objeto. Nopróximo exercício, esta propriedade será utilizada para identificar ostatus do botão.
NOTAS:
Para criarmos esses tipos de botões, estaremos trabalhando com ocontrole Image Box que mostrará a imagem correspondente a açãoque você tomou. Por exemplo, se você pressionou o botão, aparecerá aimagem do botão pressionado.
É possível alterar os estados dos botões através da procedure deevento MouseDown, por exemplo.

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 42
Exercício 5: Criando botões Gráficos
Faça um programa que permita que o usuário digite seu textonuma caixa de texto e formate-o (Negrito, Itálico e Sublinhado) damaneira que desejar.
Tela do Exercício
Private Sub Image7_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Image7.Tag = "Para cima" Then Image7.Picture = Image4.Picture txttexto.FontBold = True Image7.Tag = "Para baixo" Else Image7.Picture = Image1.Picture txttexto.FontBold = False Image7.Tag = "Para cima" End IfEnd Sub
Resolução do Exercício:
Form Caption = Formuláriopara Exercício Name = frmexerc
Label AutoSize = 'True Caption = Clique nos botões para formatar otexto. Name = Label1
TextBox MultiLine = True Name = txttexto
Image Name = Image1 Picture = ...\bld-up.bmp
Tag = Para cima Visible = False
Image Name = Image2 Picture = ...\itl-up.bmp Tag = Para cima Visible = False
Image Name = Image3 Picture = ...\ulin-up.bmp Tag = Para cima Visible = False
ImageName = Image4Picture = ...\bld-dwn.bmp
Tag = Para baixoVisible = False
Image Name = Image5 Picture =...\itl-dwn.bmp Tag = Para baixo Visible = False
Image Name = Image6 Picture = ...\ulin-dwn.bmp
Tag = Para baixo Visible = False
Image Picture= Tag = Para cima Name = Image7
Image Picture = Tag = Para cima Name = Image8
Image Picture = Tag = Para cima Name = Image9
CommandButton Caption = &Sair Name = cmdsair
Private Sub Image8_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Image8.Tag = "Para cima" Then Image8.Picture = Image5.Picture txttexto.FontItalic = True Image8.Tag = "Para baixo" Else Image8.Picture = Image2.Picture txttexto.FontItalic = False Image8.Tag = "Para cima" End IfEnd Sub
Private Sub Image9_ MouseDown(Button As Integer,Shift As Integer, X As Single, Y As Single) If Image9.Tag = "Para cima" Then Image9.Picture = Image6.Picture txttexto.FontUnderline = True Image9.Tag = "Para baixo" Else Image9.Picture = Image3.Picture txttexto.FontUnderline = False Image9.Tag = "Para cima" End IfEnd Sub

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 43
Arrastar-e-Soltar (Drag and Drop)
Em aplicações desenvolvidas em Visual Basic, você podeutilizar muitos recursos para facilitar e “agradar” o usuário. Umadessas características do VB, é o Drag-and-Drop que permite que ousuário arraste um objeto até outro e solte-o.
Usando as propriedades, eventos e métodos que o VB possui,você pode especificar como esse recurso deve se comportar em suaaplicação.
DragMode Permite que seu objeto sejaarrastado automaticamenteou manualmente
Propriedades
DragIcon Especifica qual o ícone quedeve ser mostrado quando oobjeto é arrastado.
DragDrop Reconhece quando umcontrole é solto em outroobjeto.
Eventos
DragOver Reconhece quando umcontrole é arrastado em cimade outro.
Métodos Drag Inicia ou termina a ação dearrastar manualmente.
Você pode configurar a propriedade DragMode de seu objetopara 1 (que permite que o objeto seja “arrastado”).
NOTAS:
Se você configurar a propriedade DragMode do objeto paraManual, para iniciar e terminar a ação de arrastar-e-soltar, serápreciso programar o método Drag.
Os valores aceitos por este método é:
Constante Valor AçãoVbCancel 0 Cancela a operação Drag-and-DropVbBeginDrag 1 Inicia a operação de arrastar.VbEndGrag 2 Termina a operação para arrastar e
solta o objeto.
Evento DragDrop()
Este evento possui 3 argumentos:Source: que identifica o objeto que você esta arrastando. Você
pode utilizar esse argumento com métodos e propriedades. Porexemplo: source.visible = false.
X, Y: que são coordenadas. X é a coordenada horizontal e Y éa coordenada vertical.

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 44
Exercício 6: Teste Arrastar-e-Soltar
Fazer um programa para testar o Arratar-e-Soltar no VB. Esseprograma deve permitir que você arraste os objetos para a lata de lixoe depois coloque fogo.
Tela do exercício.
Resolução do Exercício:
Form Name = FormDrag_Drop Caption = Teste Arrastar-e-Soltar
Image Name = Image5 Picture = ..\trash02a.ico Stretch = True
Image Name = Image6 Picture = ..\trash02b.ico Stretch = True Visible = False
Image Name = Image4 DragIcon = ..\point11.ico DragMode = Automatic Picture = ...\point11.ico Stretch = True
Image Name = Image3 DragIcon = ..\fire.ico DragMode = Automatic Picture = ..\fire.ico Stretch = True Tag = Fogo
Image Name= Image2 DragIcon = ..\gaspump.ico DragMode = Automatic Picture = ..\gaspump.ico Stretch = True
Private Sub Image5_DragDrop(Source As Control, X As Single, Y As Single) Source.Visible = False If Source.Tag = "Fogo" Then Image5.Picture = Image6.Picture End IfEnd Sub

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 45
CommonDialog
Esse objeto permite exibir cinco caixas de diálogo nos padrões doWindows.
Apenas uma caixa de diálogo pode ser exibida a partir de umobjeto Common Dialog.
Para exibir uma determinada caixa de diálogo, deve ser utilizado ométodo correspondente à caixa desejada.
Os conteúdos das caixas são controlados através de suaspropriedades, ou seja, quando uma caixa é preenchida, os resultadossão apresentados por suas propriedades.
Caixas de Diálogo e sua utilização:
Abrir : para abrir um arquivo.Método correspondente: ShowOpen
Salvar Como: para salvar um arquivo.Método correspondente: ShowSave
Imprimir: para definir as opções de impressão.Método correspondente: ShowPrinter
Fonte: para definir uma fonte e um estilo para textos.Método correspondente: ShowFont
Cor: para escolher uma nova cor da paleta.Método correspondente: ShowColor
NOTAS:
Um objeto CommonDialog não é visível ao usuário em tempo deexecução do programa.
Propriedades correspondentes à CommonDialog Abrir:
Filter : define quais os tipos de arquivos deverão ser exibidos.Por exemplo:
commondialog1.filter = “Bitmaps (*.BMP) | *.BMP |Metafiles (*.WMF) | *.WMF”
Filename: define o nome do arquivo selecionado.
Propriedades correspondentes à CommonDialog Color:
Flags: define qual o tipo da caixa Color deverá ser exibida. OsFlags podem ser:
&H1&: Exibe a CommonDialog Cor padrão, com as corespersonalizadas como opção.
&H2&: Exibe a paleta padrão e a personalizada.&H4&: Exibe a paleta padrão com o botão de Cores
Personalizadas desabilitado.&H8&: Exibe o botão de ajuda na CommonDialog Cor.
Color: esta propriedade é utilizada para configurar a cor dosobjetos do VB que suportam cor. É possível modificar a cor do fundode um formulário, as cores das formas no formulário e as cores defundo dos objetos.

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 46
Controle ImageList
O controle ImageList é utilizado para armazenar uma lista deimagens para serem utilizadas nas barras de ferramentas, animações eaplicativos. Cada ImageList é responsável pela criação de apenas umalista de imagens.
Sua capacidade é limitada pela mémoria de seu micro.
Página de Propriedades.
Para exibir a Página de Propriedades do ImageList, selecione oobjeto no formulário, clique-o com o botão direito do mouse e escolhaa opção propriedades.
A guia Images é a parte principal para a criação da lista deimagens, pois é nela que se encontram as propriedades para inserçãoda imagem na lista.
Propriedades:
Current Image:Index: índica da imagem inserida no vetor da lista das
imagens.Key/Tag: palavra-chave utilizada para fazer referencia a
imagem.
ImagesMostra todas as imagens inseridas na lista na ordem em que
foram inseridas.
Image Count: exibe o número de imagens inseridas na lista
Para inserir um imagem à Lista:Utilize o botão Insert Picture, escolha a imagem e clique no
botão Open.
Para remover uma imagem da lista:Selecione a imagem desejada e clique o botão Remove
Picture.
NOTAS:

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 47
Controle Toolbar
Este controle é utilizado para criar barras de ferramentas padrãodo Windows 95.
Página de Propriedades.
Para exibir a Página de Propriedades do ToolBar, selecione oobjeto no formulário, clique-o com o botão direito do mouse e escolhaa opção Propriedades.
Na guia Buttons, principais propriedades:
Index: índice do botão na barra de ferramentas.Caption: texto que deve aparecer para descrever o botão.Description: descrição da função do botão.
Key/Tag: texto para identificação do botão.Value: define se deve estar pressionado ou não pressionado.Style: estilo no qual o botão deve ser mostrado.ToolTipText: texto explicativo sobre o botão que deve
aparecer para o usuário.Image: se a ToolBar estiver associada à uma ImageList, voce
pode utilizar uma imagem da lista de imagem através seu index.
Para inserir um novo botão, utilize:Botão Insert Button.
Para excluir um botão da ToolBar:Utilize o botão Remove Button.
NOTAS:

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 48
Exercício 7: Utilizando as Common Dialog
Fazer uma aplicação que permita a abertura de imagens e aconfiguração do ambiente de trabalho pelo usuário (cores doFormulário). Deve tambem limpar a tela da Imagem quando o usuáriodesejar.
Tela do exercício em tempo de Design.
Resolução do Exercício:
Form Name = Form1 Caption = Abrindo Figuras
Imagem Box Name = Image1
ToolBar Name = Toolbar1
Image List Name = ImageList1
CommonDialog Name = CommonDialog1
Private Sub Toolbar1_ButtonClick(ByVal Button As ComctlLib.Button) Select Case Button.Key Case "Abrir" CommonDialog1.Filter = "Metafiles (*.WMF) | *.WMF |Bitmaps (*.BMP) | *.BMP _ |JPEG
(*.JPG) | *.JPG"
CommonDialog1.ShowOpen If CommonDialog1.CancelError <> True Then Image1.Picture = LoadPicture(CommonDialog1.filename) End If Case "Color" CommonDialog1.Flags = &H8& CommonDialog1.ShowColor If CommonDialog1.CancelError <> True Then Form1.BackColor = CommonDialog1.Color End If Case "Fechar" Image1.Picture = LoadPicture() Case "Sair" End End SelectEnd Sub

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 49
Acesso ao Sistema de Arquivos
O VB possui controles que permitem o acesso ao seu sistema dearquivos, ou seja, são controles que permitem fazer a pesquisa emdiretórios e drives e a seleção de arquivos.
Os controles são:
Controle DriveList: permite a pesquisa dos drivesválidos em seu sistema.
Controle DirListBox: permite a pesquisa em pastas(diretórios) existentes no drive selecionado.
Controle FileListBox: permite a seleção de umarquivo específico em uma pasta (diretório).
Trabalhando com as Propriedades:
Existem propriedades que não podem ser configuradas em tempode design do programa, ou seja, não é possível configurá-lasutilizando a janela Properties (Janela de Propriedades). Elas só podemser configuradas em tempo do execução:
Drive: recebe a letra do drive selecionado (utilizado pelocontrole DriveListBox).
Path: recebe o nome do diretório selecionado (utilizado peloscontroles DirectoryListBox e FileListBox).
FileName: quando um nome de arquivo é selecionado, o VB ocoloca nesta propriedade (utilizado pelo controle FileListBox).
NOTAS:
Eventos mais utilizados:
Para DirListBoxChange() – modifica o diretório selecionado. Ocorre quando o
usuário dá um duplo clique em um novo diretório ou quando vocêmuda a propriedade Path através de código de programação.
Para DriveListChange() – Modifica o drive selecionado. Ocorre quando o
usuário seleciona um novo diretório ou quando você muda apropriedade Drive através de programação.
Para FileListBoxClick: Ocorre quando o usuário pressiona o botão do mouse
em um objeto. Pode também ocorrer quando o valor de um controle(objeto) é mudado.
Outras propriedades do FileListBox
Archive: define se os arquivos do tipo Archive devem ser listados pelocontrole.
Hidden: define se os arquivos do tipo Hidden devem ser listados pelo controle.Normal: define se os arquivos do tipo Normal devem ser listados pelo controle.System: define se os arquivos do tipo System devem ser listados pelo controle.
Estas propriedades recebem apenas valores True/False. Aspropriedades Archive e Normal, por default, tem o valor True.
]Utilize a propriedade Pattern da FileListBox para definir quais os
tipos de arquivos que poderá ser selecionados.Para especificar mais de um arquivo, utilize a seguinte sintaxe:
*.bmp;*.wmf;*.ico (sem espaçamento entre os ponto-e-vírgula).

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 50
Exercício 8: Programa paraProcura de Arquivos
Fazer um programa que permita a abertura de imagens.WMF, .ICO, .BMP, .JPG, .GIF. Utilize, para isso, os objetosDriveList, DirListBox e FileListBox.
Tela do Exercício.
Resolução do Exercício:
Form Caption = Procura de Arquivos Name = frmprocura
CommandCaption = &Sair
Name = cmdsairDriveList Name = drive1
Command Caption = Mostrar Figura Enabled = False Name = cmdfigura
FileListBoxName = arquivos
Pattern = *.bmp;*.wmf;*.ico
DirListBox Name = diretorios
Image Box Name = imagem
Stretch = True
Private Sub drive1_Change() diretorios.Path = drive1.driveEnd Sub
Private Sub diretorios_Change() arquivos.Path = diretorios.PathEnd Sub
Private Sub arquivos_Click() cmdfigura.Enabled = TrueEnd Sub
Private Sub cmdfigura_Click() ou Private Sub arquivos_Click() imagem.Picture=LoadPicture(arquivos.Path & "\" & arquivos.filename)End Sub
Private Sub cmdsair_Click() EndEnd Sub

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 51
Formulários MDI (Multiple Document Interface)
A Interface para Multiplos Documentos é uma característica muitomarcante na programação em ambiente Windows. Esses tipos deFormulários criam uma relação hierárquia entre um formulário (que éo Formulário MDI-pai) e os outros (que são os formulários CHILD).Esses programas são como o Word, que permite que váriosdocumentos sejam abertos simultaneamente.
Características do Formulários MDI
Um Formulário Child é sempre exibido na área interna doformulário MDI-pai. Não é possível mostrá-lo fora desta área.
Quando esse formulário é minimizado, seu ícone aparecerá noFormulário MDI-pai e não como um botão na barra de tarefas.
Quando o Formulário MDI-pai é minimizado, todas as janelasexistentes nele são minimizadas e são exibidas como um botão nabarra de tarefas.
As barras de menus dos formulários Child são exibidos na barra demenus do formulário MDI-pai.
NOTAS:
Para criar uma aplicação MDI:1. Crie um novo Project2. A partir do Menu Project, escolha a opção Add MDI
Form.
Assim, você criou um formulário-pai. Para criar formulários-filhos, você precisa:
1. A partir do menu Project, escolha a opção Add Form.
Nas propriedades do Formulário-filho, configura a propriedadeMDI Child para True.
Para exibir todos os formulários Child do seu Project numFormulário MDI-pai, configure a propriedade AutoShow (doformulário MDI-pai) para True.
Em formulários do tipo MDI, não é possível “desenhar” controlesque não possuam a propriedade Align. Para “desenhar” objetos quenão possuam esta propriedade, desenhe um controle Picture noformulário e depois, dentro dele, desenhe os demais controles.Exemplo:

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 52
Exercício 9: Crie um programa MDI
Crie um novo Project. Neste Project, crie um formulário-pai etrês formulários-filhos.
Tela do Exercício
Resolução do Exercício:
MDIFormCaption = Controle de EstoqueWindowState = MaximizedName = MDIControl_est
FormCaption = Formulário para InclusãoMDIChild = TrueName = FrmInclusão
FormCaption = Formulário para Alteração/ExclusãoMDIChild = TrueName = FrmAlt_Excl
FormCaption = Formulário para ConsultaMDIChild = TrueName = FrmConsulta

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 53
Trabalhando com Menus
O VB possui uma ferramenta para a construção de menus: o“Menu Editor” . Utilize-o para criar menus customizados em suaaplicação.
Para construir um menu
Selecione um formulário e a partir do menu “Tools”, escolha aopção “Menu Editor”.
Janela do Menu Editor
NOTAS:
Cada item do seu Menu é um objeto. Os itens são inseridos deforma hierárquica.
Caption: Caixa de texto no qual você deve inserir o nome domenu que aparecerá na barra de menu.
Para criar uma barra para separadorar no menu, digite apenasum hífen.
Para permitir o acesso ao menu pelo teclado, antes da letra, digiteum &. Quando você estiver executando a aplicação, a letra estarásublinhada e o usuário pode acessar o menu pressionando ALT + aletra sublinhada.
Se você precisar de um & ( e comercial) em seu menu, digiteduas vezes o símbolo no Caption.
Name: Caixa de texto na qual você deve inserir um nome para oobjeto. Esse nome só será usado em programação, para se referir aoitem do menu. Não aparecein no menu.
Index: Nesta caixa de texto você define um valor numérico quedetermina a posição do controle com o vetor. Esta posição não érelativa a posição da tela.
Shortcut: neste item você define uma tecla de atalho para o seumenu.
HelpContextID: Nesta caixa de texto você define um valornumérico para o Context ID que é usado para encontrar o tópicoapropriado no arquivo de Help identificado pela propriedade HelpFile.
NegotiatePosition: neste item, você pode determinar se e como omenu aparecerá em determinado formulário.
Quando os Menus são criados, vãoaparecendo nesta caixa na ordemhierárquica em que foram criados.

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 54
Para construir um menu (continuação)
Checked: define se deve ou não aparecer um check inicialmentedo lado esquerdo do item do menu.
Enabled: define se este menu deve ou não estar abilitado.
Visible: define se o item do menu deve estar visível ou não.
Use estes botões para mudar de nível em um menu domais alto até o mais baixo. Você pode criar até 4 níveis de submenusno VB.
Use estes botões para mudar de posição de um item demenu no mesmo nível (para cima ou para baixo na lista de menu).
Os seguintes botões são para:
• Next - é utilizado para adicionar novos itens dentro do seuMenu.
• Insert - é utilizado para inserir menus entre os menus jálistados.
• Delete - utilizado para remover itens do seu Menu.
NOTAS:
Para trabalhar com formulários em menus, é preciso utilizaralguns métodos para visualização:
O método Show é utilizado para visualizar um Form.<nome do formulário>.Show
Com método Hide, o Form permanece carregado na memória, masnão é visualizado pelo usuário.
<nome do Formulário>.Hide
Os comandos Load e Unload trazem e tiram um Form da memóriarespectivamente.
Load <nome do Formulário>Unload <nome do Formulário>

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 55
Exercício 10: Construa um Menu
Para este exercício, abra o Project do exercício anterior(exercício 9). E construa um menu como a figura abaixo mostra:
Tela do Exercício
NOTAS:
Para mostrar os formulários de Inclusão, Alteração/Exclusão eConsulta a partir dos menus, utilize os métodos apresentados napágina anterior (54).

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 56
Acessando um Banco de Dados através doDATA CONTROL.
O que é o Data Control?O Data Control permite a ligação do Form com um banco de
dados. Através desse objeto, você pode criar uma aplicação quemostre e atualize seus dados sem precisar programar.
Com o Data Control, é possível trabalhar com recordsets vazios,adicionar, editar e excluir registros. Em aplicações mais sofisticadas,você precisa tratar algumas condições de erros que o Data Control nãotrata.
Como funciona o Data Control?Uma vez que a aplicação for executada, o Data Control usa as
suas propriedades para abrir um banco de dados selecionado, paracriar um banco de dados e para criar um recordset.
O Data Control possui setas que permitem que você role pelosregistros da tabela aberta durante a execução do programa e umalegenda para descrever o conteúdo deste. Geralmente, essapropriedade é configurada com o nome do banco de dados que estásendo utilizado.
Propriedades do Data Control
Existem algumas propriedades que devem ser configuradas paraque o “Data Control” possa acessar seu banco de dados.
Principais Propriedades (para exibí-las, selecione o objeto e tecleF4):
DataBaseName: indica o nome e o caminho do seu banco dedados.
RecordSource: indica a tabela na qual o Data Control vai buscaros dados.
NOTAS:
Mais algumas propriedades da Caixa Texto
Depois de configurar as propriedades DataBaseName eRecordSource, é preciso vincular os dados trazidos pelo Data Controlcom algum dos objetos oferecidos pelo Visual Basic para avisualização.
Neste curso, estaremos utilizando a Caixa Texto para visualizar etrabalhar com os dados do Banco de Dados. Para isso, precisaremosmodificar 2 propriedades:
DataSource: Indica para a Caixa Texto qual Data Control possuio campo que você precisa visualizar.
DataField: Indicar qual campo do Data Control especificado pelapropriedade DataSource deve ser mostrado na Caixa Texto.
Obs.: Para visualizar as propriedades da Caixa Texto, selecione-ae pressione a tecla de função F4.

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 57
O que é um Recordset?
É um conjunto de linhas e colunas que contém todos dados databela.
O Data Control que abre um banco de dados carrega esseRecordset.
Métodos do Recordset
MoveFirst: este método move do registro atual para o primeiroregistro da sua tabela.
MoveNext: este método move do registro atual para o próximoregistro.
MovePrevious: este método move do registro atual para o registroanterior.
MoveLast: move do registro atual para o último registro da tabela.
Sintaxe: data1.Recordset.Movefirst.
Para especificar um tipo de Recordset, configure a propriedadeRecordsetType para:
Recordset Type ValueTable 0Dynaset 1Snapshop 2
NOTAS:
BOF (Begin of File)Ana CamposJosé SilvaJoão CastroSueli PivaRute Salim
EOF (End of File)
Métodos para controlar o início e o fim do arquivo
BOF: controla o início do arquivo.EOF: controla o final do arquivo.
Sintaxe: data1.recordset.BOF (para controlar o início do arquivo). data1.recordset.EOF (para controlar o fim do arquivo).
Por exemplo:
Private Sub cmdProximo_Click()‘este botão tem a função de ‘navegar para o próximo registro‘do Data Control.If data1.recordset.EOF then
MsgBox “Final de Arquivo!!”Else
Data1.recordset.movenext‘MoveNext é o método utilizado para mover a posição do‘Data Control para o próximo registro.
End IfEnd Sub

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 58
Acessando um Banco de Dados através doDATA CONTROL (continuação)
Propriedades para a manipulação de Final de arquivo (EOF -end of file) e início de arquivo (BOF - begin of file):
O objeto Data Control também gerencia o que acontece quandoencontra um Recordset vazio (sem registros). As propriedades quedevemos trabalhar para controlar as ações que o Data Control devetomar são:
BOFAction: indica qual a ação que o Data Control deve tomarquando a propriedade BOF for igual a TRUE, ou seja, quando forcomeço de arquivo. Valores possíveis:
0. Move First: o Data Control moverá o ponteiro para oprimeiro registro do arquivo.
1. BOF: o Data Control continua na posição de começo dearquivo.
EOFAction: indica qual a ação que o Data Control deve tomarquando a propriedade EOF for igual a TRUE, ou seja, quando for fimde arquivo. Valores possíveis:
0. Move Last: o Data Control moverá o ponteiro para oúltimo registro do arquivo.
1. EOF: o Data Control continua na posição de fim dearquivo.
2. AddNew: indica que o Data Control deve ir para um novoregistro.
NOTAS:

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 59
Objetos Associados (Data Bound) ao Data Control
Os objetos associados – Data Bound – são utéis pois facilitam opreenchimento dos objetos da tela com o conteúdo do banco de dados.
Existem 3 tipos de controles deste tipo:
1. Data Bound Combo box: é semelhante a Caixa deCombinação, com a diferença que quando associada a um DataControl, é preenchida automaticamente, opcionalmente atualiza umcampo de outra tabela que esteja associando a outro Data Control.
Para que a Caixa de Combinação funcione como o esperado, épreciso configurar algumas propriedades que estão listadas a seguir:
DataSource Name: especifica qual o Data Control será atualizadoquando um seleção for realizada.
DataField Name: define qual o campo que será atualizado noRecordsetof especificado pelo DataSourcce.
RowSource Name: define qual o Data Control usado como origemdos itens para a lista.
ListField Name: define o nome do campo no Recordsetespecificado pelo propriedade RowSource que é usado para preenchera caixa combo.
BoundColumn Name: o nome do campo no Recordsetespecificado pelo RowSource para ser passado para a propriedadeDataField quando um seleção for feita.
BoundText Text: valor do campo da coluna associada. Quandouma seleção é feita, o valor é passado para atualizar o Recordsetespecificado pelo DataSource e DataField.
NOTAS:
2. Data Bound List: semelhante ao ListBox (Caixa deListagem). Pode ser preenchido automaticamente quando associado àum Data Control e opcionalmente, atualizar um Recordset de outroData Control. As propriedades da DBCombo Box valem para a DataBound List.
3. Data Bound Grid: permite a manipulação de uma sériede linhas e colunas representando um registro e campos do Recordsetdo Data Control.
O DBGrid é semelhante ao Controle Grid, a diferença é que com oDBGrid, não é preciso programar as linhas e colunas da tabela, épreciso apenas associar um Data Control ao objeto queautomaticamente, o Grid será preenchido

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 60
Controle Status Bar
Este controle permite a criação de uma barra de Status para ousuário. A barra de Status é utilizada para emitir informações sobre atela atual aos usuários.
Exemplo da utilização da Status Bar.
Propriedades do Controle:
Página de Propriedades.
A guia mais importante para este treinamento, é a guia Panels poisé nela que estaremos definindo as mensagens que devem ser mostradaspara os usuários.
Principais propriedades:
Index: índice da mensagem na barra de status.Text: texto que deve aparecer para descrever o botão.Description: descrição da função do botão.ToolTipText: texto explicativo sobre o botão que deve
aparecer para o usuário.Key/Tag: texto para identificação do botão.Alignment: Define o alinhamento do texto da mensagem
dentro do Painel.
Para inserir um novo painel, utilize:Botão Insert Panel.
Para excluir um painel da ToolBar:Utilize o botão Remove Panel.
NOTAS:
Para exibir a página de propriedades de um controle, clique com obotão direito do mouse sobre o objeto selecionado e escolha a opçãoProperties.

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 61
Controle SSTab
Este controle é utilizado para dividir a tela do formulário em váriasfunções.
Exemplo da utilização do SSTab.
Propriedades do Controle:
Página de Propriedades do Controle SSTab.
A guia mais importante para este treinamento, é a guia Generalpois é nela que estaremos definindo as guias da tabela.
Principais propriedades:
Current Tab: índice da mensagem na barra de status.Tab Caption: texto que deve aparecer para descrever o botão.Tab Count: Número de guias.TabPerRow: Número de guias por linha.Orientation: Define a orientação das guias da SSTab, se as
guias devem estar no topo, a esquerda, a direita ou no embaixo.0 – ssTabOrientationTop: Alinhamento das guias no Topo da tabela.1 – ssTabOrientationBottom: Alinhamento das guias embaixo da tabela.2 – ssTabOrientationLeft: Alinhamento das guias a Esquerda da tabela.3 – ssTabOrientationRight: Alinhamento das guias a Direita da tabela.
Style: estilo da tabela.
Para inserir uma nova guia:Incremente a propriedade Tab Count.
Para remover uma guia existente:Decremente a propriedade Tab Count.
NOTAS:Para exibir a página de propriedades de um controle, clique com o
botão direito do mouse sobre o objeto selecionado e escolha a opçãoProperties.

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 62
Exercício 11: Criando uma Consulta
Criar um consulta que acesse os dados das tabelas de Clientes ePedidos existentes no banco de dados nwind.mdb. Para isso, abra oproject do exercício 10 e utilize o formulário de Consulta.
Resolução do Exercício:
FormName = FrmConsultaCaption = Formulário paraConsulta
Data ControlName = data_cliDatabaseName =...\nwind.mdbRecordsetType = DynasetRecordSource = Customers
Data ControlName = data_orderDatabaseName =...\nwind.mdbRecordsetType = DynasetRecordSource =
TextBoxDataSource = data_cliDataField = CompanyNameName = txtCompanyName
TextBoxDataSource = data_cliDataField = ContactNameName = txtContactName
TextBoxDataSource = data_cliDataField = ContactTitleName = txtContactTitle
TextBoxDataSource = data_cliDataField = AddressName = txtcAddress
TextBoxDataSource = data_cliDataField = CityName = txtCity
TextBoxDataSource = data_cliDataField = RegionName = txtRegion
TextBoxDataSource = data_cliDataField = CountryName = txtCountry
TextBoxDataSource = data_cliDataField = PostalCodeName = txtPostalCode
TextBoxDataSource = data_cliDataField = PhoneName = txtPhone
LabelAutoSize = TrueCaption = Cidade:
LabelAutoSize = TrueCaption = CEP:
LabelAutoSize = TrueCaption = Estado:
LabelAutoSize = TrueCaption = Telefone:
LabelAutoSize = TrueCaption = País:
LabelAutoSize = TrueCaption = FAX:
LabelAutoSize = TrueCaption = Nome do Cliente:
LabelAutoSize = TrueCaption = Companhia
DBGridName: DBGOrdersDataSource: data_orders
LabelAutoSize = TrueCaption = Cargo:
LabelAutoSize = TrueCaption = Endereço:
CommandButtonName = cmdSairCaption = &Sair
TextBoxDataSource = data_cliDataField = FaxName = txtFax Private Sub Data_Cli_Reposition()
Data_order.RecordSource = "Select * from Customers whereCustomerID = ’" & Data_cli.Recordset.Fields("CustomerID")
Data_order.RefreshEnd Sub

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 63
Função InputBox
Uma caixa de diálogo que permite a entrada de dados pelo usuário.
Sua sintaxe:
<variavel_string> = InputBox(mensagem, título, valor Default)
Parâmetros da função:
Mensagem: é a expressão que descreve o que deve ser digitado.Título: é o título da caixa de diálogoValor Default: é o valor padrão da InputBox, se nada for digitado.
Exemplo de uma caixa de diálogo InputBox:
NOTAS:

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 64
Localizando registros com o método SEEK
Para localizar registros em sua tabela aberta pelo Data Control,você pode utilizar o método SEEK, é o método de procura mais rápidopois utiliza um índice da tabela aberta do banco de dados.
Sua sintaxe é:
<Data_Control.name>.Recordset.seek <comparação>, <chave>
onde o parâmetro <comparação> é uma string de comparação epode ter os seguintes valores: “=”, “<=”, “>=”, “<>”, “<” ou “>”
e <chave> é o valor a ser procurado na tabela.
Para utilizar este método de procura, precisamos configuraralgumas propriedades para o Data Control:
- Tipo de Recordset a ser aberto necessariamente precisaser TABLE.
- Sua tabela deve ter um índice cadastrado pois teremos quedefinir um índice como chave da procura.
As propriedades que serão alteradas são:
- RecordsetType: indica o tipo de recordset a ser aberto.- Index: indica qual é o índice a ser utilizado para a busca.
Por exemplo:
Data_produto.recordset.index = “cod_produto” ‘cod_produto é o nome do índice existente na tabela ProdutosData_produto.recordset.seek “=”, txtcod_produto.text‘Será procurado na tabela o código do produto que for igual ao
código digitado na caixa de texto txtcod_produto.text.
NOTAS:
Esse método, por utilizar um índice da tabela, acessará o dadoprocurado diretamente, não precisando percorrer toda a tabelaprocurando pelo valor especificado pelo argumento. Se encontrar odado, posicionará o seu Data Control no registro.
Para testar se o registro foi ou não encontrado, utilize o métodoNoMatch. Por exemplo:
If data_produto.Recordset.NoMatch then<instrução>
Ou seja, se o registro não existir, então, podemos incluí-lo.
If NOT data_produto.Recordset.NoMatch then<instrução>
Quer dizer que o registro existe, então, você poderá trazê-lo para asua tela de consulta ou não permitir a entrada de um novo registro,pois ele já existe.

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 65
Exercício 12: Localizando Registros em um Bancode Dados
Utilizando o exercício anterior, crie um botão para localizarregistros na base pelo Nome do Cliente (use o método SEEK).
Resolução do Exercício:
Command Button Name = cmdLocalizar Caption = &Localizar
Private Sub cmdLocalizar_Click() Dim ProcNome As String
ProcNome = InputBox$("Digite o nome a ser localizado:", "Localizando Registros ...")
If ProcNome <> "" Then Data_cli.Recordset.Index = "Nome" Data_cli.Recordset.Seek "=", ProcNome If Data_cli.Recordset.NoMatch Then MsgBox ("Nome não localizado!!!") Data_cli.Recordset.MoveFirst End If End IfEnd Sub

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 66
Métodos para Inclusão, Alteração e Exclusão emBanco de dados
Quando utilizamos o Data Control, os métodos existentes paraestas operações, são:
Para Inclusão basta usar a seguinte sintaxe:<data_control.name>.recordset.AddNew
O método AddNew "prepara" a tabela para receber um novoregistro. Se este a tabela tiver uma chave primária, e o você tentarincluir um registro que já exista nela, um erro será causado. Maisadiante veremos como tratar esses erros no VB. No final da apostilatemos uma lista de erros gerados pelo VB.
Para alteração:< data_control.name>.recordset.Edit
Com este método, você prepara o registro atual para edição.
Para efetuar as operações de Inclusão e Alteração use:<data_control.name>.recordset.Update
Para exclusão:<data_control.name>.Recordset.Delete
Utilize o método Refresh para atualizar os dados tabela aberta queforam atualizados com as operações de inclusão, alteração e exclusão.
NOTAS:

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 67
Localizando registros com o método FIND
Para localizar registros em sua tabela aberta pelo Data Control,você pode utilizar o método FindFirst (significa "Encontrar oPrimeiro”). Sua sintaxe é:
<Data_Control.name>.Recordset.FindFirst “campo da tabela = ” & caixa_de_texto.text
Por exemplo:Data_produto.recordset.findefirst “cod_produto = “ & text1.text
Esse método percorrerá toda a sua tabela procurando pelo valorespecificado pelo argumento ("cod_produto = " & text1.text, ondecod_produto é o nome do campo da tabela e text1.text é o nome doobjeto Caixa Texto da tela do seu formulário) e posicionará o seuData Control no registro encontrado.
Para testar se o registro foi ou não encontrado, utilize o métodoNoMatch. Por exemplo:
If data_produto.Recordset.NoMatch then<instrução>
Ou seja, se o registro não existir, então, podemos incluí-lo.
If NOT data_produto.Recordset.NoMatch then<instrução>
Quer dizer que o registro existe, então, você poderá trazê-lo para asua tela de consulta ou não permitir a entrada de um novo registro,pois ele já existe.
NOTAS:
Atribuindo campos da tabela a Caixa Textos da tela doFormulário.
A sintaxe para atribuir os campos da tabela aberta pela DataControl, é a seguinte:
Data1.recordset("nome_campo_tabela")Por exemplo:Text1.text = data1.recordset("cod_produto")
Com esta linha, você consegue visualizar os dados do campo databela: cod_produto.

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 68
Exercício 13: Inclusão de Novos Clientes
Fazer uma aplicação para inclusão de novos clientes. Para isso, abra oproject do exercício 10 e utilize o formulário de inclusão.
Tela do Exercício.
Resolução do Exercício:FormName = FrmInclusaoCaption = Inclusão de
Novos Clientes
Data ControlName = data_cliDatabaseName =
...\nwind.mdbRecordsetType = DynasetRecordSource = Customers
TextBoxName = txtFaxText = (BRANCO)
TextBoxName = txtCompanyNameText = (BRANCO)
TextBoxName = txtContactNameText = (BRANCO)
TextBoxName = txtContactTitleText = (BRANCO)
TextBoxName = txtcAddressText = (BRANCO)
TextBoxName = txtCityText = (BRANCO)
TextBoxName = txtRegionText = (BRANCO)
TextBoxName = txtCountryText = (BRANCO)
TextBoxName = txtPostalCodeText = (BRANCO)
TextBoxName = txtPhoneText = (BRANCO)
TextBoxName = txtcod_cliText = (BRANCO)
LabelAutoSize = TrueCaption = CEP:
LabelAutoSize = TrueCaption = Estado:
LabelAutoSize = TrueCaption = Telefone:
LabelAutoSize = TrueCaption = País:
LabelAutoSize = TrueCaption = FAX:
LabelAutoSize = TrueCaption = Nome do Cliente:
LabelAutoSize = TrueCaption = Companhia
LabelAutoSize = TrueCaption = Cidade:
LabelAutoSize = TrueCaption = Cargo:
LabelAutoSize = TrueCaption = Endereço:
LabelAutoSize = TrueCaption = Código do Cliente::
CommandButtonName = cmdSairCaption = &Sair
CommandButtonName = cmdIncluirCaption = &Incluir
Sub Limpa_campos() txtcod_cli.Text = "" txtFax.Text = "" txtCompanyName.Text = "" txtContactName.Text = "" txtContactTitle.Text = "" txtCountry.Text = "" txtPostalCode.Text = "" txtAddress.Text = "" txtCity.Text = "" txtRegion.Text = "" txtPhone.Text = ""End Sub
Private Sub cmdincluir_Click() data_cli.Recordset.FindFirst "CustomerID = ‘" & txtcod_cli.Text & “’” If data_cli.Recordset.NoMatch Then data_cli.Recordset.AddNew data_cli.Recordset("CustomerID") = txtcod_cli.Text data_cli.Recordset("CompanyName") = txtCompanyName.Text data_cli.Recordset("ContactName") = txtContactName.Text data_cli.Recordset("ContactTitle") = txtContactName.Text data_cli.Recordset(“Contry”) = txtCountry.Text data_cli.Recordset(“PostalCode”) = txtPostalCode.Text data_cli.Recordset(“Address”) = txtAddress.Text data_cli.Recordset(“City”) = txtCity.Text data_cli.Recordset(“Region”) = txtRegion.Text data_cli.Recordset(“Phone”) = txtPhone.Text data_cli.Recordset(“Fax”) = txtFax.text data_cli.Recordset.Update Else MsgBox "Cliente já cadastrado!!!" End If Limpa_camposEnd Sub

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 69
Exercício 14 : Alteração e Exclusão de Produtos
Fazer uma aplicação para alteração e exclusão de produtos em umalmoxarifado. Para isso, abra o project do exercício 10 e utilize oformulário de alteração/exclusão.
Tela do exercício em tempo de Design.
Private Sub cmdexcluir_Click() data_cli.Recordset.Delete data_cli.Refresh Limpa_camposEnd Sub
Sub Limpa_campos() txtcod_cli.Text = "" txtFax.Text = "" txtCompanyName.Text = "" txtContactName.Text = "" txtContactTitle.Text = "" txtCountry.Text = "" txtPostalCode.Text = "" txtAddress.Text = "" txtCity.Text = "" txtRegion.Text = "" txtPhone.Text = ""End Sub
Resolução do Exercício:
FormName = FrmAltExclCaption = Inclusão de NovosClientes
Data ControlName = data_cliDatabaseName = ...\nwind.mdbRecordsetType = DynasetRecordSource = Customers
TextBoxName = txtFaxText = (BRANCO)
TextBoxName = txtCompanyNameText = (BRANCO)
TextBoxName = txtContactNameText = (BRANCO)
TextBoxName = txtContactTitleText = (BRANCO)
TextBoxName = txtcAddressText = (BRANCO)
TextBoxName = txtCityText = (BRANCO)
TextBoxName = txtRegionText = (BRANCO)
TextBoxName = txtCountryText = (BRANCO)
TextBoxName = txtPostalCodeText = (BRANCO)
TextBoxName = txtPhoneText = (BRANCO)
TextBoxName = txtcod_cliText = (BRANCO)
LabelAutoSize = TrueCaption = CEP:
LabelAutoSize = TrueCaption = Estado:
LabelAutoSize = TrueCaption = Telefone:
LabelAutoSize = TrueCaption = País:
LabelAutoSize = TrueCaption = FAX:
LabelAutoSize = TrueCaption = Nome do Cliente:
LabelAutoSize = TrueCaption = Companhia
LabelAutoSize = TrueCaption = Cidade:
LabelAutoSize = TrueCaption = Cargo:
LabelAutoSize = TrueCaption = Endereço:
LabelAutoSize = TrueCaption = Código do Cliente::
CommandButtonName = cmdSairCaption = &Sair
CommandButtonName = cmdIncluirCaption = &Incluir

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 70
Resolução do Exercício:
Private Sub cmdalterar_Click() data_cli.Recordset.Edit data_cli.Recordset("CostumerID”) = txtcod_cli.Text data_cli.Recordset("Fax") = txtFax.Text data_cli.Recordset("CompanyName") = txtCompanyName.Text data_cli.Recordset("ContactName") = txtContactName.Text data_cli.Recordset("ContactTite") = txtContactTitle.Text data_cli.Recordset("Country") = txtCountry.Text data_cli.Recordset("PostalCode") = txtPostalCode.Text data_cli.Recordset("Address") = txtAddress.Text data_cli.Recordset("City") = txtCity.Text data_cli.Recordset("Region") = txtRegion.Text data_cli.Recordset("Phone”) = txtPhone.Text data_cli.Recordset.Update Limpa_camposEnd Sub
Private Sub txtcod_prod_LostFocus() data_cli.Recordset.FindFirst "CostumerID = ‘" + txtcod_cli.Text If Not data_cli.Recordset.NoMatch Then txtcod_cli.Text = data_cli.Recordset("CostumerID”) txtFax.Text = data_cli.Recordset("Fax") txtCompanyName.Text = data_cli.Recordset("CompanyName") txtContactName.Text = data_cli.Recordset("ContactName") txtContactTitle.Text = data_cli.Recordset("ContactTite") txtCountry.Text = data_cli.Recordset("Country") txtPostalCode.Text = data_cli.Recordset("PostalCode") txtAddress.Text = data_cli.Recordset("Address") txtCity.Text = data_cli.Recordset("City") txtRegion.Text = data_cli.Recordset("Region") txtPhone.Text = data_cli.Recordset("Phone”) txtcod_prod.Enabled = False Else MsgBox "Cliente não está cadastrado!!!" txtcod_cli.Enabled = True txtcod_cli.SetFocus End IfEnd Sub

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 71
Códigos de Erros
Para evitar que o VB interrompa seu programa quando um erroocorrer, adicione a instrução On Error depois da declaração do Sub.
A instrução On Error deve ser seguida pelos comandos:
- Resume Next- GoTo <label>
Resume Next
Com essa instrução, a execução do programa volta para ainstrução imediatamente posterior àquela em que o erro foi detectadopelo VB.
GoTo <label>
Quando acontece um erro, o VB desvia o fluxo de execuçãopara um label definido no módulo.
Exemplo:Sub Form_Click()
On Error GoTo ErrorHandler...Exit Sub
ErrorHandler: ‘LabelMsgBox = “Ocorreu o Erro “ & Err & “.”
Resume NextEnd Sub
NOTAS:

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 72
Variáveis e Constantes no VB
Tabela de Cores para a Função QBCOLOR( )
Preto 0 Cinza 8Azul 1 Azul claro 9Verde 2 Verde claro 10Ciano 3 Ciano claro 11Vermelho 4 Vermelho claro 12Magenta 5 Magenta claro 13Amarelo 6 Amarelo claro 14Branco 7 Branco brilhante 15
Constantes para Botões
Constante Valor Botões MostradosVbOKOnly 0 OKVbOKCancel 1 OK, CancelarVbAbortRetryIgnore 2 Anular, Repetir, IgnorarVbYesNoCancel 3 Sim, Não, CancelarVbYesNo 4 Sim, NãovbRetryCancel 5 Repetir, Cancelar
Constantes de Ícones
Constante Valor Ïcone MostradoVbCritical 16 Ícone de StopVbQuestion 32 Ícone de ponto de interrogaçãoVbExclamation 48 Ícone de ponto de exclamaçãovbInformation 64 Ícone de Informação
Constantes de Saída da Função MsgBox( )
Constante Valor Botão ClicadoVbDOK 1 Botão de OK foi clicadoVbCancel 2 Botão de Cancelar foi clicadoVbAbort 3 Botão de Anular foi clicadoVbRetry 4 Botão de Repetir foi clicadoVbIgnore 5 Botão de Ignorar foi clicadoVbYes 6 Botão de Sim foi clicadoVbNo 7 Botão de Não foi clicado

Centro de ComputaçãoGerência de Atendimento ao Cliente (e-mail [email protected])
Visual Basic 5.0 73
Dicas para Consulta
Links interessantes:
http://www.microsoft.com/vbasichttp://www.forumaccess.com/http://www.bowmansoft.com/vbwm/http://www.vbonline.com/http://www.viquevb.com/http://www.developersmagazine.com.br/
& Livros/Revistas:
Revista Fórum Access /Visual Basic/ OfficeRevista Developers – Revista brasileira para desenvolvedores.