Você está na página 1de 86

VISUAL BASIC 5.

Autora:
Daniela Cristina Maestro

Requisitos para instalao da Linguagem


(Verso Enterprise)
Microsoft Windows NT 3.51 ou superior, ou Microsoft Windows
95 ou superior.
Mnimo 486 microprocessador.
Mnimo resoluo VGA.
35 Mb para instalao mnima e 345 Mb para instalao
completa.
8 MB de RAM para aplicaes. (Isto pode variar, dependendo
das especificaes que voc utilizar para sua aplicao. Tipos de

Universidade Estadual de Campinas


Centro de Computao
Verso: 2 Novembro/98
DDL, projetos) e 16 MB de RAM para o ambiente de
desenvolvimento do VB.

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

As verses do Visual Basic 5.0


O VB possui 3 verses diferentes. Cadas uma delas foi
desenvolvida para atender as diferentes necessidades dos usurios:
Standard (Learning Edition): a verso mais simples do
Visual Basic, seus itens so:
Visual Basic development environment
Controles Padres
Exemplos
Setup Wizard

Crystal Reports
Books Online (Livros de Help)
Referncia Online Windows 32-bit API e DLL Declare
statement for Visual Basic
Arquivos necessrios para criao de outros Controles.
O Data control (para acesso a banco de dados):
Ambas as verses: Learning e Professional Edition incluem o
Data control. Porm com a Professional Edition, voc pode tambm
utilizar o Data control para fazer acesso a Open Database
Connectivity (ODBC).
Data access objects (DAO)
Editor de Imagens, Resource Compiler, Code Profiler, and
Ferramentas para Help Workshop.

Setup Kit
Imagens de cones

Enterprise: Esta verso possui todas as caractersticas das anteriores e:

Arquivos de Help
Curso Interativo Learn VB Now
Professional: Esta verso possui todos os itens anteriores (exceto
o curso interativo Learn VB Now), e inclui tambm:
Controles adicionais e Help
Arquivos de Imagens, cones:Metafiles and bitmaps
Compilador Microsoft Windows Help

Microsoft Visual SourceSafe: controle de desemvolvimento


em grupo.
Suporte para remote OLE Automation e DCOM
Ferramentas para acesso remoto a base de dados
Gerenciador de Automao.
Gerenciador de Componentes.

Visual Basic 5.0


Inicializando o VB:

Visual Basic 5.0


1

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Executvel do VB

Visual Basic 5.0


2

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Tela Principal do Visual Basic 5.0

Formulrios:
a base grfica de toda
a aplicao. neste
objeto que voc ir
desenhar seus objetos e
program-los.

Caixa de Ferramentas :
onde se encontram as
ferramentas para voc
desenvolver
sua
aplicao.
Para
incluir
uma
ferramenta
ao
seu
Formulrio, clique duas
vezes sobre a ferramenta
ou arraste-a para dentro
do formulrio.

Janela do Projeto:
Nesta janela esto listados
todos
os
formulrios,
mdulos, classes que esto
sendo
utilizados
pelo
Projeto.

Caixa de Propriedades:
As propriedades definem as caractersticas dos
objetos e cada um deles possuem seu conjunto
de propriedades, ou seja, um formulrio tem
propriedades diferentes de uma caixa de texto.
Algumas delas podem ser configuradas em
tempo de execuo da aplicao e outras em
tempo de desenvolvimento. Elas esto dispostas
em ordem alfabtica ou por categoria.

Visual Basic 5.0


3

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Caractersticas do Visual Basic 5.0


NOTAS:
Muitos programadores j esto familiarizados com a linguagem
Basic, na qual o VB baseado. O Visual Basic tem toda a base para a
linguagem de programao usada por todas as aplicaes Microsoft
Office, Microsoft Visual Basic for Applications (VBA).
O Visual Basic possui uma srie de caractersticas que facilitam a
criao de aplicaes:
Mltiplas plataformas Windows. Com a implementao da
tecnologia ActiveX, possvel migrar suas aplicaes para documentos
ActiveX que rodam em browser (IE) em mquinas UNIX e Macintosh.
Objetos OLE, porm nesta nova verso, foi implementada a
tecnologia ActiveX que muito mais rpida que OLE e pode ser
utilizada em aplicaes Internet/Intranet.
Rapid Application Development (RAD) Desenvolvimento
Rpido de Aplicaes (Wizards).
Ambiente de desenvolvimento muito mais amigvel que as
verses anteriores, alm de permitir que este ambiente seja
personalizado de acordo com que o desenvolvedor necessita.
Compilao para cdigo nativo que utiliza a tecnologia de
compilao do C++.
IntelliSense: editor de cdigo que mostra as sintaxe das
funes, parmetros, constantes.
Nesta verso, gera apenas aplicaes 32 bits.
No uma linguagem completamente orientada a objetos, mas
possui recursos para gerar objetos e atribuir-lhes propriedades e
mtodos. Seus objetos so compatveis com a teconologia
COM/DCOM.

Visual Basic 5.0


4

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Utilizando o HELP do VB

NOTAS:

O Help do VB uma das melhores documentaes sobre a


linguagem. Para ativ-lo, siga os passos:
1. A partir do menu Help, escolha a opo que atender a
sua necessidade.

Se voc tem ligao com a Internet, poder visualizar as ltimas


informaes e novidades diretamente do site da Microsoft, a partir da
opo Microsoft on the Web, os tpicos disponveis esto listados na
figura acima do lado esquerdo.
Se voc precisar ter informaes sobre um determinado objeto,
selecione-o (clique sobre o objeto desenhado no formulrio) e
pressione a tecla de funo F1. Ser aberto o help completo para o
objeto em questo: todas as suas propriedades, seus mtodos, seus
eventos, exemplos.
Visual Basic 5.0
5

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Criando uma Aplicao em Visual Basic

NOTAS:

Para criar uma aplicao no Visual Basic muito fcil. Porm, voc
precisa desenvolver um software que, para o usurio final, seja
funcional, seguro e prtico.
Os passos so:
1. Criar uma interface, ou seja, dispor os objetos de forma
amigvel na tela.
2. Ajustar as propriedades dos objetos. Como: nome, tamanho,
fonte, etc.
3. Escrever o cdigo necessrio. Isso inclui: definir constantes,
Interface Inimiga declarar variveis, criar procedimentos e
funes.
O Visual Basic uma linguagem que possui muitas propriedades e
definindo-as corretamente, praticamente voc consegue criar sua
aplicao. Porm, alguns clculos,
operaes
precisam
ser programadas. neste ponto em que voc precisa programar
os eventos dos objetos. O que voc precisa observar, qual o evento a
ser programado para executar a ao.
Para saber quais eventos devem ser codificados, pensar em tudo o
que o usurio pode fazer e como seu programa vai responder a essas
aes.
Interface Amiga

Visual Basic 5.0


6

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Exibe a janela Object Browser. Esta janela exibe as


classes, propriedades, mdulos e mtodos disponveis das
bibliotecas e os mdulos e procedimentos em seu Project.
Voc pode usar esta janela para procurar e usar os objetos que
voc criou.

Barra de Ferramentas

na barra de ferramentas
utilizados no VB.

que esto os comandos e funes mais

Exibe a Caixa de Ferramentas.

Descrio dos botes:

Adiciona um novo Formulrio, Mdulo, Mdulo de Classe,


etc. ao seu projeto.
Exibe a Janela de Construo de Menus.

Abre e Salva um Projeto, respectivamente.

Recorta, copia, cola e procura por objetos e


cdigos do seu projeto.
Desfaz e refaz aes.

Executa, pausa (break) e para a aplicao,


respectivamente.
Exibe a janela do Projeto.

Exibe a Janela de propriedades.


Exibe a Janela de LayOut do Formulrio.
Visual Basic 5.0
7

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Executando um Programa no Visual Basic

NOTAS:

A partir do menu Run, escolha a opo Start ou pressione a tecla de funo F5. Para
interromper a execuo do programa em qualquer ponto, tecle

Salvando um Project:
Na barra de Menus, selecione File e escolha a opo Save Project. Na
primeira vez, o VB solicitar um nome para o Project e para o(s) Form(s),
Module(s).
Para Salvar apenas um dos objetos e no o porjeto inteiro, utilize a opo Save
<NomeObjeto>.
Criando um executvel:
Na barra de Menus,
<NomeProject>.exe.

selecione

File

escolha

opo

Make

CRTL+Break.
Utilizando Ferramentas de Debug:
F8 para execuo o programa passo-a-passo.
F9 para definir BreakPoints, ou seja, determinar paradas no seu programa
durante a sua execuo para encontrar possveis erros de programao ou lgica.
Para exibir a Barra de Debug do VB:
1. A partir do menu View, item ToolBars e selecione a opo Debug.

A janela Locals Window utilizada para mostrar o valor corrente da expresso


selecionada. Quando o programa pausado, a janela Calls mostra uma lista dos
procedimentos ativos que ainda ainda no foram finalizados.
Voc pode utilizar o Step Into para executar linha por linha de seu programa. Se
um procedimento chamado, excutado linha por linha tambm. O Step Over similar
ao Step Into. A diferena acontece quando h uma chamada de procedimento. Pois o

Visual Basic 5.0


8

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)
Step Over no executa o procedimento linha a linha, mas como um bloco, de uma vez. O Step Out executa as linhas restantes de uma funo na qual o breakpoint se encontra.

Project
Uma aplicao desenvolvida em VB, baseada em Projects (em
portugus, Projetos).
O que um Project?

Arquivos contendo os Custom Controls (.OCX)


Um arquivo de projeto contendo todos os componentes (.VBP)
Criando um novo Project no Visual Basic

A partir do menu File, escolha a opo New Project.

uma coleo de arquivos utilizada para criar sua aplicao. no


Project que esto listados os outros arquivos do VB, como:
formulrios, classes, mdulos, etc. As opes de ambiente que voc
configura tambm se encontram neste arquivo. Estas informaes so
atualizadas toda vez que voc salva o projeto. Todos esses arquivos e
objetos podem ser compartilhados por outros projetos.

Para visualizar sua janela, a partir do menu View, escolha Project


Explorer ou tecle CRTL + R.

NOTAS:

Voc utiliza os Projects para gerenciar todos os diferentes


arquivos que voc cria em seu sistema. O Project constitudo por:

Arquivos de formulrios (.FRM). O formato .FRM um


formato texto.

Arquivos que contm imagens em formato binrio (.FRX).


Arquivos de Class Module (.CLS)

Arquivos de Standard Module (.BAS)

Tela apresentada para escolha de um novo projeto.


No VB 5.0, possvel criar vrios tipos de Projetos. Os tipos de
Project so:
1. Standard EXE Cria um executavel padro do VB.
2. ActiveX EXE Cria um arquivo ActiveX executavel.
3. ActiveX DLL Cria um controle ActiveX no formato DLL
Obs.: projetos do tipo ActiveX DLL/EXE no possuem
interface com o usurio. So muito utilizados para criarem
regras de negcios.
4. ActiveX Control Cria um controle ActiveX.
5. ActiveX Document DLL/EXE: Cria um projeto que pode ser
levado para a Internet. Possui interface com o usurio.

Visual Basic 5.0


9

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

NOTAS:

Alterando as propriedades de seu projeto


1.

A partir do menu Project, escolha a opo <Nome_projeto>


Properties.
Tela de propriedades do Projeto: General.
Na tag General, sero configuradas as propriedades bsicas do
projeto. Seus itens so:
1. Project Type: define o tipo de projeto que est sendo utilizado.
2. Startup Object: define qual o objeto que ser exibido assim
que o seu projeto for inicializado.
3. Project Name: Nome do Projeto.
4. Help File Name: define o arquivo de HELP pertencente ao
projeto.

Visual Basic 5.0


10

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

5. Project description: descrio rpida sobre o projeto.

Visual Basic 5.0


11

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Alterando as propriedades de seu projeto (cont.)


NOTAS:
NOTAS:

Tela de propriedades do Projeto: Make.


Version Number Cria o nmero da verso do projeto.
Major/ Minor nmeros da verso do projeto; 0 9999.
Revision Verso da Reviso do projeto; 09999.
Auto Increment Se selecionado, automaticamente incrementa o
nmero de toda vez que gerado um executavel da aplicao.
Application permite que um nome e um cone sejam associados ao projeto:
Title Nome da Aplicao.
Icon cone da Aplicao.
Version Information define informaes especficas sobre a verso atual do
projeto aberto.
Type So as informaes que podem ser configuradas, como por exemplo:
nome da sua companhia, descrio do arquivo, informaes de Copyright, etc.

Value o valor para o tipo de informao selecionada na caixa Type.

Visual Basic 5.0


12

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Custom Controls (Controles)


O que so Custom Controls?
So os arquivos de controle (ferramentas) do VB. Um Custom
Control uma extenso para a Caixa de Ferramentas. Quando voc
adiciona um controle ao seu programa, ele passa a fazer parte do
ambiente de desenvolvimento e run-time, promovendo novas
funcionabilidades para sua aplicao.

Certas propriedades so comum a vrios controles, da mesma


forma como existem propriedades individuais a cada controle.

Cada Controle tem suas prprias caractersticas ( propriedades),


procedimentos pr-definidos (mtodos) e suas prprias aes ( eventos)
que podem ser programados e configurados de acordo com a
necessidade do sistema. Voc pode visualizar essas propriedades na
Properties Window, seus mtodos na Object Browser e seus eventos na
Code Window.

Custom Control (Controle)

Instalao dos Custom Controls:


As verses Professional e Interprise instalam os custom controls no
Windows, no diretrio SYSTEM ou SYSTEM32.
Adicionando um custom control (controle) a Caixa de
Ferramentas:
1. A partir do menu Project, escolha Components ou Crtl+T.
2. Para adicionar um controle (.OCX) Caixa de Ferramenta,
selecione a Check Box ao lado do nome do controle.
3. Escolha OK para fechar a caixa de dilogo do Components.
Todos os controles selecionados aparecero na Caixa de Ferramenta.
Para no confirmar a insero dos controles caixa de ferramentas,
clique no boto Cancelar.

Caixa de Ferramentas.

Visual Basic 5.0


13

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

NOTAS:
Custom Controls (Controles cont.)

Option Button: usado para escolher somente uma opo dentro


de um grupo

O que um Objeto?
um elemento que ser utilizado como interface para o usurio
que criado em um formulrio. Sero utilizados os controles para
criarem estes objetos.

Data Control: a forma mais fcil de acessar suas tabelas de um


banco de dados.
Os controles no VB tm o que conhecido por Funcionalidade
Inerente, ou seja, eles sabem como operar e responder a certas
situaes por eles prprios.

Propriedades dos Objetos


Cada controle no VB possui suas prprias caractersticas, sendo
que algumas podem ser iguais para mais de um.
Essas propriedades podem ser definidas para determinar a sua
aparncia e o seu funcionamento. Com isso, voc configura o controle
de acordo com a sua necessidade.
Algumas propriedades podem ser ajustadas em tempo de
execuo. Para isso, use a sintaxe: nomeobjeto.propriedade = valor.

NOTAS:
Exemplos de Controles:

Por

Label: textos informativos que no podem ser alterados pelo


usurio.
Text Box: um campo onde o usurio pode digitar suas
informaes.
Command Button: executa uma srie de aes que foram escritas
nos Modules. So acionados por um evento, por exemplo: um click
ou barra de espao.

exemplo:
txtDataIni.Text
txtDataIni.BackColor = Blue

26/02/1976

BackColor = propriedade para alterar a cor de fundo do objeto.


Text = propriedade para inserir um texto no objeto Caixa de Texto.
Visualizando as Propriedades de um determinado objeto:
Existem dois modos de visualizar as propriedades de um objeto na
Janela de Propriedade: por ordem alfabtica ou por categoria.

Visual Basic 5.0


14

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Para visualizar a Janela de propriedades de um objeto:

NOTAS:
Cada objeto no VB possui um conjunto pr-definido de eventos.
aos quais ele pode responder. Esses eventos so listados para cada
objeto na caixa de listagem drop-down Proc (Procedure) na janela de
cdigo.

Selecione o objeto com um clique e tecle F4.

Eventos

Pode-se acionar um evento dentro de um outro evento que est


sendo executado pois ele nada mais que um procedimento.

O que so eventos?
So aes pr-definidas que podem ocorrer com cada objeto. Cada
objeto possui seus prprios eventos, sendo que alguns deles so iguais
para mais de um objeto. Essas aes precisam ser programadas. Sem
programao elas no funcionam, mas continuam existindo.
Exemplos de alguns eventos existentes:
- Click (um click do boto do mouse)
- KeyPress (qualquer tecla pressionada)
- MouseMove (um movimento do mouse )

O nome dos eventos definido pelo nome do objeto, underscore e


o nome do evento:
nomeobjeto_nomeevento()
Exemplo:
txtDataIni_KeyDown()
Para visualizar os eventos, clique 2 vezes sobre o objeto.

Visual Basic 5.0


15

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

NOTAS:
Mtodos
So procedimentos pr-definidos que cada objeto possui. No
possvel mudar suas definies tentando reprogram-los.
Os mtodos so comandos que desempenham funes para os
objetos aos quais esto associados.
A sintaxe para sua utilizao:
< nome_do_objeto>.<mtodo >
Por exemplo: txtdata_inic.SetFocus

Forms (Formulrios)
O que um Formulrio?
o objeto onde voc define as telas do seu programa (projeto).
Com os Forms voc cria a interface da sua aplicao para o usurio.
Um Formulrio composto por: - janela do formulrio; - janela de
Cdigo. Quando um novo Project criado, o VB automaticamente
cria um formulrio padro: Form1. Este novo formulrio aparece com
uma grade padro (pontos uniformemente espaados) para voc
ajustar e alinhar seus objetos na tela. Para dimensionar um Form, voc
pode utilizar o mouse.
na janela do Formulrio que voc desenha os objetos da barra de
ferramentas. O Formulrio tambm considerado um objeto.
Na sua janela de cdigo, voc pode escrever a programao para
esses objetos.
Cada objeto num Formulrio possui uma janela de cdigo
correspondente.
A extenso desses arquivos : <nome_do_form>.FRM

Exemplo de uma tela de Formulrio (Form) em tempo de Design.

Acrescentando um Form a um Project j existente


A partir do menu Project, escolha Add Form.
Visualizando um Formulrio
A partir da janela do Project, selecione o form desejado, clique no
cone de View Form ou duplamente sobre o mesmo.
Visualizando a Janela de Cdigo do Formulrio
Para visualizar apenas o cdigo de um formulrio, selecione-o e
clique no cone correspondente ao View Code.

Visual Basic 5.0


16

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Forms (Formulrios cont.)

utilizado para inicializar os objetos do formulrio, por exemplo,


preencher uma caixa combo.

Propriedades mais utilizadas nos Forms


Appearance: determina a aparncia do Form. Pode ser definido
como Flat (modo normal) e 3D.
BackColor: determina a cor de fundo do Form.
BorderStyle: define a borda do Form.
Caption: esta propriedade funciona como se fosse um ttulo para
o Form.
ControlBox: define se a caixa de controle (para fechar, minimizar,
maximizar, etc) do lado esquerdo do Form deve estar disponvel ou
no. Possui dois valores: True/False.
Enabled: define se o form estar ou no disponvel para uso.
Valores: True/False.
Font: define um novo tipo de letra para o Form.
Icon: define um cone para identificao do Form
MaxButton: determina se o boto para Maximizar deve ou no
ser exibido no Form (do lado direito).
MinButton: determina se o boto para Minimizar deve ou no ser
exibido no Form (do lado direito).
Name: utilizada para definir um nome para o Form. (para a
programao)
Visible: determina se um Form deve ser visvel ou no. Valores :
True/False
Eventos mais utilizados nos Formulrios
Load: antes do form ser carregado na memria, ser executada a
funo/procedimento que estiver descrita neste evento. Muito

Unload: este evento executado antes do formulrio ser


descarregado da memria. Utilize este evento para finalizar banco de
dados, tabelas, arquivos abertos.
QueryUnload: este evento detecta como o evento Unload foi
ativado. Possui dois parmetros:
1. UnloadMode: indica como o evento Unload foi ativado.
Retorna os seguintes valores:
Constante

Valor

Descrio

vbFormControlMenu

O usurio escolheu o comando


Fechar do menu de Controle do
formulrio.

vbFormCode

O evento Unload foi iniciado a


partir de

vbAppWindows

A sesso corrente do ambiente


operacional do Windows foi
terminada.

vbAppTaskManager

O Gerenciador de Tarefas do
Windows terminou a sesso.

vbFormMDIForm

Um formulrio MDI child est


sendo fechado porque um
formulrio MDI foi fechado.
2. Cancel: determina se o evento Unload deve ou no continuar.
Inicialmente, seu valor False, se receber True, o Unload do
formulrio interrompido.

Visual Basic 5.0


17

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

NOTAS:
NOTAS:

Acrescentando um novo Mdulo ao projeto:

Teste!

A partir do menu Project, escolha Add Module.

Crie um novo Project:


A partir do menu File, opo New Project, tipo de Project
Standard.
Junto com o Project, o VB criar um form automaticamente. Abra
este form a partir da janela do Project e visualize suas propriedades (
tecle F 4).
Altere suas propriedades de acordo com as suas necessidades.

nesta janela onde voc deve escrever seu cdigo em VB. Cada
objeto criado no Project tem sua prpria Janela de Cdigo.
Para visualiz-la:
Para exib-la, d um duplo clique sobre o objeto do qual o evento
ser tratado.

Mdulos
As funes e procedimentos que servem para mais de um
formulrio (uso geral do sistema), as variveis globais e as constantes
devem ser escritas em Mdulos.
Os Mdulos podem conter:

Janela de Cdigo

Objeto
Selecionado

Declaraes. Voc pode declarar Constantes, tipos, variveis.

Eventos correspondentes
ao objeto selecionado.

Procedimentos. Uma Sub-rotina, uma funo e Propriedades


que contm cdigos.
A extenso desses arquivos : <nome_arquivo>.BAS

Visual Basic 5.0


18

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Janela de Cdigo do Mdulo.

Visual Basic 5.0


19

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

NOTAS:
Controle Label
So textos informativos (legendas) em nossos forms. No so
editados pelos usurios.
Algumas propriedades:
Alignment: determina o alinhamento do texto.
AutoSize: determina se o tamanho do Label deve ser o mesmo
tamanho que o seu texto.
BackColor: define a cor do fundo do label.
BackStyle: define se deve ser transparente ou opaco.
BorderStyle: define o tipo de borda.
Caption: determina o texto da sua legenda.
WordWrap: determina se o AutoSize deve expandir vertical ou
horizontalmente.

Visual Basic 5.0


20

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

NOTAS:
Controle Boto (Command Button)
Com este controle, voc pode criar botes em sua aplicao.
Quando voc clicar sobre este boto, uma ao ocorrer.
Algumas propriedades:
Caption: a legenda do boto.
Cancel: ativa o boto quando o ESC for pressionado.
Font: esta propriedade controla a aparncia do Caption. Voc
pode deix-lo itlico, negrito, mudar o tipo de fonte.
Left, Top: coordenadas da extremidade esquerda superior do
boto.
Height, Width: a altura e a largura do boto. Voc tambm
pode alter-las apenas redimensionando-as com o mouse.
Name: nome para o objeto.
Default: ativa o boto que o ENTER for pressionado.
Enabled: habilita ou desabilita um boto. Configure essa
propriedade para True - para habilit-lo ou para False, para desabilitlo.
ToolTipText: define o texto explicativo sobre a funo do
objeto.
Visible: define se um objeto deve estar visvel (True) ou
invsivel (False) na tela.

Para criar essas teclas de atalho, quando for


configurar a propriedade Caption basta colocar na
frente da letra desejada como atalho um & (e
comercial). Por exemplo:
No caso do boto de comando ao lado, quando o
usurio teclar ALT+S, a ao programada no
evento Click ser executada.

Eventos:
Click: o que estiver escrito neste evento ocorrer quando
apertamos o boto.
Criando teclas de atalho (ALT + <tecla>) :

Visual Basic 5.0


21

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

NOTAS:
MsgBox mensagem, dialogo, titulo End
Sub

Caixas de Dilogo

As Caixas de Dilogo permitem avisar ao usurio sobre algum


problema, pedir algum parmetro ou tomar alguma deciso. O VB
possui duas funes para a construo de Caixas de Dilogo:
Funo MsgBox
MsgBox(mensagem[, botes de dilogo][, ttulo da caixa]) Parmetros
da funo:
Mensagem: a expresso que mostrada na caixa de dilogo.
Botes de dilogo: nmero dos cones que devem ser mostrados, o estilo que
deve ser usado. Se for omitido, o valor padro para o cone 0.
Ttulo da caixa: a expresso que deve ser mostrada na barra de ttulo da
caixa de dilogo. Se no for especificado, ser mostrado o nome da aplicao.
Voc pode criar o MsgBox de dois modos: como funo ou como procedimento.
A diferena entre funo e procedimento que a primeira retorna um valor e a outra,
no. Desse modo, quando usamos uma funo podemos tomar diferentes caminhos
em nossa aplicao.
MsgBox usada como um statment:

MsgBox usada como uma funo:

Sub cmdmsg_Click () mensagem =


"Esta uma mensagem" dialogo =
vbOkOnly + vbExclamation
titulo = "Caixa de Dialogo"

Sub cmdmsg_Click()
Dim
resposta
As
Integer
mensagem = "Voce quer sair?"
dialogo = vbYesNo + vbQuestion
titulo = "Caixa de Saida"

resposta = MsgBox(mensagem, dialogo,

titulo)
If resposta = vbYes Then
End
End if

O nmero mximo de caracteres na mensagem de 1024 ,


dependendo do tamanho dos caracteres usados. Se a mensagem tiver
mais de uma linha, voc pode usar a funo CHR(13).
Obs. Chr() - uma funo que retorna o caracter associado ao valor
do cdigo. 13 o nmero correspondente a tecla ENTER.

Teste!
Crie um novo Project, com botes de mensagem e para sada. Utilize os
cdigo acima.

Observe que a Caixa de Dilogo somente perder o foco, quando


voc responder questo. possvel mudar o foco para outro
aplicativo. Mas o seu aplicativo ficar parado na MsgBox.

Visual Basic 5.0


22

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)
Programa
Name = cmdmensagem
Exerccio 1: Meu Primeiro Programa
Name = frmexerc1
CommandButton
Label
Fazer um programa que exiba num Label uma mensagem qualquer
Caption
=
&Limpar
Caption = (BRANCO)
e quando for ser terminado, exibir uma mensagem de sada (utilize a
Name = cmdlimpar
name = lblmensagem
funo MSGBox).
CommandButton
Caption = &Sair
Name = cmdsair

Private
Sub
cmdmensagem_Click()
lblmensagem = "Meu Primeiro Programa!"
End Sub
Private Sub cmdlimpa_Click()
lblmensagem = ""
End Sub

Tela do Exerccio.
Terminando uma aplicao no VB:

Private Sub cmdsair_Click()


MsgBox Terminando o programa!!
End Termina uma aplicao
End Sub

Use o comando END para terminar (sair) de uma aplicao.


Propriedades Padro:
Os objetos do Visual Basic possuem propriedades que so padro,
ou seja, quando voc apenas utiliza o nome do objeto, o VB j sabe
qual a propriedade que voc est se referindo. No caso do objeto
Label, a propriedade padro o Caption.
Omitindo as propriedades padro, o seu programa fica mais
rpido.

Resoluo do Exerccio:
Form CommandButton
Caption = Mensagem Primeiro

Figuras no Visual Basic


Para voc inserir uma figura em qualquer objeto do VB, este
objeto precisa ter a propriedade Picture. Esta propriedade consegue
visualizar os seguintes formatos: .BMP, .ICO, .JPG, .GIF, .WMF.
Se voc precisa trabalhar em tempo de execuo, possvel:
Copiar uma figura de outro objeto;
Copiar uma figura da rea de transferncia (ClipBoard); Copiar
uma figura de um arquivo.

Caption = &Exibir Mensagem

Visual Basic 5.0


23

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Por exemplo:
MeuForm.Picture = picture1.picture
MeuForm.Picture = Clipboard.GetData()
MeuForm.Picture = LoadPicture("c:\temp\carro.bmp")

Teste!

Para limpar a figura, utilize a funo LoadPicture sem parmetros:


MeuForm.Picture = LoadPicture( )
No Visual Basic existe dois controles que permitem o trabalho
com figuras. So eles: Picture Box e Image Box.
O Controle Image Box gasta menos memria que a Picture Box,
mas possui menos recursos de programao.

Crie um novo Project com um novo Form e neste desenhe os dois


controles.
Na propriedade Picture dos dois controles, selecione uma imagem.
Para o Picture Box, defina a propriedade AutoSize como True e para
o Image Box defina a propriedade Stretch como True. Execute o
programa e confira o que acontece.

Picture Box

Image Box

Controle Image Box

Redimensionamento de Figuras
Permite inserir uma imagem sua aplicao.
Os controles Picture e Image Box possuem propriedades que
permitem o redimensionamento das imagens inseridas.
Para o controle Picture, a propriedade AutoSize que deve ser
definida com True/False. Essa propriedade se definida como True,
permite que a imagem seja exibida do seu tamanho original,
redimensionando o controle Picture Box.
Para o controle Image Box, a propriedade que permite o
redimensionamento da imagem Stretch. Essa propriedade definida
como True, redimensiona a imagem do tamanho que voc desenhou
o controle Image Box no formulrio.

NOTAS:
O redimensionamento de imagens em Bitmaps resulta em perda
de definio. Para evitar maiores danos, voc pode utilizar imagens
no formato .WMF (MetaFiles do Windows).

Propriedades:
Picture: permite escolher o desenho que queremos mostrar. Os
formatos permitidos so: .BMP, .JPG, .GIF, .WMF, .ICO.
Stretch: define se a figura deve ou no se ajustar ao tamanho do
controle Image Box.

Controle Text (Caixa de Texto)


Permite a entrada e edio do texto inserido na caixa.
Propriedades:
MaxLength: determina o tamanho mximo do texto a ser
digitado.
Multiline: determina que a caixa de texto ter mais de uma linha.
PasswordChar: define como o texto digitado na caixa de texto
deve aparecer. Se estiver com valor True, qualquer valor digitado

Visual Basic 5.0


24

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

aprece como um * (asterisco). Apenas funciona se a propriedade


Multiline estiver como False.
ScrollBars: determina se a caixa de texto deve ou no ter barras
de rolagem quando a propriedade Multilne True.
Text: nesta propriedade que temos o texto digitado. Voc
tambm pode atribuir textos caixa de texto em tempo de execuo.
Por exemplo: text1.text = Curso de VB.
Evento(s):
Change: ocorre toda vez que o contedo da caixa de texto
for alterado.
LostFocus: ocorre quando o objeto perde o foco.

NOTAS:
Mtodo(s):
Setfocus: este mtodo utilizado para dar o foco do cursor caixa
de texto.
Exemplo: text1.Setfocus com isso, o cursor do ponto que
estiver na aplicao passar a estar na caixa de texto Text1.
O controle Caixa de Texto um objeto muito til para obter os
dados que o usurio insere atravs do teclado.

Visual Basic 5.0


25

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Evento(s):
Click: ocorre toda vez houver um clique sobre o Option Button

Controle Option
Permite a seleo de uma entre vrias opes.
Propriedades:
Caption: legenda da opo.
Enabled: habilita ou desabilita o controle na tela para acesso
do usurio.
Value: possui dois valores - True ou False. Quando est
selecionado igual a True.
Visible: determina se a opo deve ou no ser mostrada na
tela.
Evento(s):
Click: ocorre toda vez houver um clique sobre o Option Button.

Controle Frame
usado para identificar um grupo de opes ou para dividir o
formulrio em vrias funes.
Propriedades:
Caption: o ttulo do Frame.
Visible: indica se o frame e os controles inseridos nele,
devem ou no estar visveis.
Para criar um grupo de opes ou dividir o formulrio em vrias
funes preciso primeiro criar o frame e depois criar os controles
dentro dele.

NOTAS:

Controle Check Box


Apresenta opes das quais podemos escolher todas, nenhuma ou
algumas.
Propriedades:
Caption: define a legenda do controle na tela.
Enabled: habilita/desabilita a opo.
Name: define o nome do controle na aplicao.
Value: esta propriedade pode ser definida com trs valores :
Unchecked (no selecionado)
Checked (selecionado)
Grayed (no est selecionado nem no selecionado)
Visible: define se o controle deve ser visvel ou no para o
usurio.

Visual Basic 5.0


26

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

NOTAS:

Controle ListBox

Controle ListBox:
O controle ListBox mostra uma lista de itens que podem ser
selecionados pelos usurios.
Propriedades:
Column: define o nmero de colunas que a ListBox deve
mostrar. A primeira coluna dada pelo nmero 0, a segundo pelo
nmero 1 e assim por diante.
Listindex: se nenhum item for selecionado, esta propriedade ter
o valor -1. O primeiro item da lista o ListIndex = 0.
ListCount: retorna o nmero de itens que a sua lista possui. O
valor desta propriedade sempre um nmero a mais do valor do
ListIndex.
MultiSelect: define como o usurio ir selecionar itens da
ListBox. So 3 tipos de seleo:
0
None: permite que 1 item seja selecionado por vez.
1
Simple: permite que mais de um item seja
selecionado.
2
Extended: permite que mais de um item seja
selecionado e ainda utilizar tecla como SHIFT e CRTL para
selecion-los.
Style: define o estilo de aparncia da ListBox. Os estilos
permitidos so:
0
Standard: estilo normal de uma listbox, apenas
com a lista dos itens.
1
CheckBox: ao lado de cada opo da listbox
colocado uma caixa de CheckBox para seleo do item.
As propriedades ListIndex e ListCount apenas podero ser
alteradas em tempo de execuo, ou seja, elas sero configuradas em
programao.

Observaes:
Para adicionar ou deletar itens na lista, utilize os mtodos AddItem
e RemoveItem.
Para adicionar itens na lista:
LstLnguas.additem "Portugus" este item o 0 (listindex)
LstLnguas.additem "Japons" este item o 1 (listindex)
LstLnguas.additem "Ingls" este item o 2 (listindex)
LstLnguas.additem "rabe" este item o 3 (listindex) Para
excluir itens da lista:

LstLnguas.removeitem lstlnguas.listindex
Usando esta sintaxe voc pode remover qualquer item que voc
selecionar da Listox.
Ou
LstLnguas.removeitem 1
LstLnguas.removeitem 3
Utilizando esta sintaxe, apenas ser removido um determinado
item.
Para limpar uma Lista inteira:

Visual Basic 5.0


27

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

LstLinguas.Clear
Utilizando este mtodo, todos os itens da lista sero apagados.

Controle Combo Box


Um controle Combo Box uma combinao das caractersticas do
TextBox e do ListBox. Os usurios podem entrar com as informaes
na TextBox ou selecionar um item a partir da ListBox.

NOTAS:
Para adicionar, excluir ou limpar itens do ComboBox, utilize os
mesmos mtodos utilizados na ListBox (AddItem e RemoveItem
pgina 26).

Propriedades:
Sorted: indica se a ComboBox deve ser ordenada
automaticamente.
Style: retorna um valor indicando o tipo de Combo Box e o
comportamento da lista. Esta propriedade apenas para leitura em
tempo de execuo.
A propriedade Style pode ser definida:
0 (Default) Dropdown Combo. uma combinao de lista e
caixa de texto. possvel selecionar o item pela lista ou digitando na
caixa de texto.
1 Simple Combo. Combina uma caixa de texto com um caixa
de Listagem. possvel selecionar o item pela lista ou digitando na
caixa de texto. Por default, uma caixa Simple combo no mostra
nenhum item da lista. Altere propriedade Height para mostrar mais
itens da lista.
2 Dropdown List. Este estilo apenas permite a seleo de um
item pela lista.
Para decidir qual dos Estilos utilizar na propriedade Style,
preciso levar em considerao que tipo de ao o usurio poder ter
realizar no controle:
Configure esta propriedade para 0 (Dropdown Combo) ou 1
(Simple Combo) para permitir que o usurios tenha uma lista de

Exemplos da ComboBox

Visual Basic 5.0


28

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

escolha. Esses dois estilos permite que o usurio escolha o item da


lista pela caixa de texto, ou seja, digite o valor do texto que ele deseja.
Configure a propriedade para 2 (Dropdown List) para mostrar uma
lista fixa para seleo de um item, ou seja, este estilo no permite que
o usurio digite na caixa de texto o valor desejado.

Visual Basic 5.0


29

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Select Case < varivel >


Case < expresso >
< comandos >
Case < expresso >
< comandos > Case
Else
< comandos >
End Select Exemplos:

Estruturas Lgicas e Condicionais


Estruturas Lgicas e Condicionais so instrues de programa
que fazem perguntas sobre alguma propriedade, objeto ou varivel
que retornam o valor TRUE (verdadeiro) ou FALSE (falso). Por
exemplo:
soma = 50
a resposta vai ser TRUE, se a varivel soma contiver 50 e
FALSE se contiver um valor diferente de 50.

Estruturas de Deciso
If ... Then ...else ... end if
Com essa estrutura, possvel avaliar uma condio e de acordo
com o resultado, tomar uma certa deciso. Sintaxe:
If <condio> then
<instruo>
elseif <condio> then
<instruo>
else
<instruo>
end if
<condio> uma expresso condicional e <instruo> uma
instruo na Linguagem do Visual Basic. Por exemplo:

Varivel numrica
Select Case var1
Case 1 to 5
Comandos ... Este bloco ser executado somente se a
varivel var1 tiver os valores: 1,2,3,4 e 5
Case 32, IS <10
Comandos ... Este bloco ser executado semente se a varivel
var1 for 32 ou menor que 10. End Select
Varivel String
Select Case texto
Case A to a
Comandos executar este bloco apenas se a palavra tiver letras
contidas no intervalo. End Select

Estruturas Lgicas e Condicionais


Estruturas de Repetio

if soma = 50 then
MsgBox A soma est entre 10 e 60.
Select Case Formato:

Do While

Visual Basic 5.0


30

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Sintexa 1:
Sintaxe 2:
Do while <condio> Do
<comandos>
<comandos>
Loop
Loop While <condio>
Os dois formatos do comando Do desempenham a mesma funo:
executar um bloco de comandos at que a condio seja verdadeira.
A diferena que na segunda sintaxe, o teste da condio feita aps
a primeira execuo dos comandos dentro do Do e na primeira, o teste
feito antes.
Do Until
Sintaxe 1:
Sintaxe 2:
Do Until < condio
>
Do
<comandos>
<comandos>
Loop
Loop Until < condio >
Os dois formatos do comando Do Until desempenham a mesma
funo: executar um bloco de comandos at que a condio seja
verdadeira. A diferena que na segunda sintaxe, o teste da condio
feita aps a primeira execuo dos comandos dentro do Do e na
primeira, o teste feito antes.
FOR

Sintaxe:
For contador = valor_inicial to valor_final {Step incremento}
< comandos >
Exit For
< comandos >
Next
Esta estrutura de controle executa um bloco de comandos por um
nmero fixo de vezes. O incremento pode ser negativo ou positivo.
O comando Exit For utilizado para interromper e sair do For ...
Next.

NOTAS:
Utilize o For ... Next para executar um conjunto de instrues
um determinado nmero de vezes.
Utilize o Do While e Do Until para executar um conjunto de
instrues at que uma determinada condio seja satisfeita.

Operadores Aritmticos NOTAS:


A tabela abaixo nos mostra os operadores que o VB aceita:

Operadores Lgicos

Soma: +

Ex.: var = 50 + 30.

Or

Se uma das condies for True, ento o resultado True

Subtrao: -

Ex.: var = valor1 - valor2

And

Se ambas as comdies for True, ento o resultado True.

Diviso no inteira: /

Ex.: var= valor2 / 3

Visual Basic 5.0


31

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

A
de

Diviso Inteira: \

Ex.: var = 50 \ 3

Resto da diviso: MOD

Ex.: 1 MOD 3

Exponenciao: ^

Ex.: var = valor1 ^ 2

Concatenao de String
Operaes

Ordem

Exe.: var = "Tes" & "te"

Not

Se a expresso condicional for True, ento o resultado


false. Se a expresso condicional for false, ento o resultado
true.

Xor

Se uma e apenas uma expresso condicional for True, ento o


resultado True. Se ambas as condies forem True ou False,
ento o resultado false.

Existe uma lista de regras internas ao VB que diz qual o operador que
deve ser utilizado primeiro. A tabela a seguir nos mostra do primeiro ao
ltimo operador a ser avaliado pelo VB:
( ) Parnteses

Os valores entre parnteses SEMPRE so avaliados


primeiro.

A exponenciao (elevar um nmero a uma


potncia) avaliada em segundo lugar.

Negao (criar um nmero negativo)

*/

Multiplicao e Diviso.

Diviso inteira

Mod

Diviso de Restos

+-

Adio e subtrao.

Frame Caption = Equip. Auxiliar de


Escritrio
Name = frame_aux ListBox name = lstinformatica
Frame
Caption = Tipo do Computador name = frame_opt

Visual Basic 5.0


32

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

Exerccio 2: Equipando seu Escritrio

Resoluo do Exerccio:

Fazer um programa que a partir de uma lista de opes, voc


possa escolher equipamentos para informatizar seu escritrio.

Tela do exerccio.

Private Sub Form_Load()


lstinformatica.AddItem "Disquete"
lstinformatica.AddItem "Impressora"
cbopagamento.AddItem "Dlar"
cbopagamento.AddItem "Yen"
End Sub
Private Sub cmdsair_Click()
End
End Sub

Form
Caption = Loja de Equipamentos
Name = frmexerc
ComboBox
name = cbopagamento
CommandButton
Caption = &Sair
Name = cmdsair
CheckBox
Caption = Secretria Eletrnica
name = chkAuxiliar1
OptionButton
Caption = Macintosh
name = OptComput1
Label
AutoSize = True
Caption = Equipamentos
Auxilires para Informtica
name = lblinformatica
Image
Name = Image1
Stretch = True
Image
name = Image3
Stretch = True
Image
Name = Image5
Stretch = True

CheckBox Caption = Calculadora


name = chkAuxiliar OptionButton
Caption = PC name = OptComput
Label AutoSize = True Caption =
Equipamentos a escolher: name =
lblescolher
Image
Name = Image2
Stretch = True
Image
Name = Image4
Stretch = True
Label
AutoSize = True
Caption = Equipando o seu
Escritrio name = lbltitulo

Resoluo do Exerccio:
Private Sub cbopagamento_Click()
If cbopagamento.ListIndex = 0
Then
Image6.Picture =
LoadPicture("...\dollar.wmf")
Image6.Visible = True
ElseIf cbopagamento.ListIndex = 1
Then
Image6.Picture =
LoadPicture("...\yen.wmf")
Image6.Visible = True

Visual Basic 5.0


33

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)
Else
Image6.Visible = False
End If
End Sub

ElseIf lstinformatica.ListIndex = 1 Then


Image5.Picture = LoadPicture("...\printer.wmf")
Image5.Visible = True
Else
Image5.Visible = False
End If
End Sub

Private Sub chkAuxiliar_Click()


If chkAuxiliar.Value = 1 Then
Image1.Picture = LoadPicture("...\answmach.wmf")
Image1.Visible = True
Else
Image1.Visible = False
End If
End Sub

Private Sub OptComput_Click()


If OptComput.Value = True Then
Image4.Picture = LoadPicture("...\computer.wmf")
Image4.Visible = True
Else
Image4.Visible = False
End If
End Sub

Private Sub chkAuxiliar1_Click()


If chkAuxiliar1.Value = 1 Then
Image2.Picture = LoadPicture("...\calcultr.wmf")
Image2.Visible = True
Else
Image2.Visible = False End If
End Sub
Private Sub lstinformatica_Click()
If lstinformatica.ListIndex = 0 Then
Image5.Picture = LoadPicture("...\disk35.wmf")
Image5.Visible = True

Private Sub OptComput1_Click()


If OptComput1.Value = True Then
Image4.Picture = LoadPicture("...\pcomputr.wmf")
Image4.Visible = True
Else
Image4.Visible = False
End If
End Sub

Controle TimerNOTAS:
O controle timer utilizado para disparar procedimentos e
funes automaticamente de tempo em tempo. Por exemplo, voc pode

Visual Basic 5.0


34

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

utilizar um controle Timer para verificar o tempo que um usurio leva


para realizar determinada funo na aplicao.
Quando este controle desenhado no Formulrio, apenas
visvel em tempo de Design, ou seja, em tempo de desenvolvimento.
Para o usurio da aplicao, fica transparente o funcionamento do
controle, ele apenas executado internamente.
Propriedades:
Enabled: define quando o Timer deve estar ativo ou no.
Valores: False/True.
Interval: determina o perodo de tempo no qual o objeto deve
ser ativado. O tempo deve ser inserido em segundos.
Para que uma ao seja disparada pelo Timer, a propriedade
Enabled deve ter o valor True e a propriedade Inteval diferente de 0.
Eventos importantes:
Timer: este evento diparado no intervalo de tempo definido
pela propriedade Interval.

Exerccio 3: Criando um Relgio Resoluo do Exerccio:


Crie um relgio que seja atualizado de segundo em segundo pelo Form CommandButton
controle Timer. Caption = Relgio

Caption = &Sair

Visual Basic 5.0


35

Name = frmexerc
Timer

Name

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)
Name = cmdsair
Label
Enabled = True AutoSize = True
Interval= 1
Caption =
= mrHora
name = lblHora

Private

Sub tmrHora_Timer()
lblHora.Caption = Time
Sub

End
Tela do Exerccio Private Sub cmdSair_Click()

End
End Sub

Visual Basic 5.0


36

Centro de Computao da UNICAMP


Diviso de Servios Comunidade (e-mail apoio@ccuec.unicamp.br)

NOTAS:
Controles ScrollBars
Esse controle pode ser vertical ou horizontal. As propriedades,
eventos e mtodos para esses objetos so os mesmos.
Propriedades:
Value: o valor (posio) do scroll.
Max, Min: define o valor mximo e o valor mnimo da barra,
respectivamente.
LargeChange: o salto quando clicamos no corpo do scroll.
SmallChange: o salto quando clicamos nas setas do scroll.
Eventos mais utilizados:
Change: ser executado o cdigo escrito toda vez que o cursor for
movimentado (com o mouse, setas de movimento, cliques nas setas do
scroll, etc.)
Scroll: somente ocorre quando movimentamos o cursor com o
mouse. No ocorre quando usamos as setas.

Visual Basic 5.0


37

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Tipos de Dados
Um programador cria uma varivel para armazenar os resultados de um clculo, criar nomes de arquivos, processar
entrada de dados, etc. Tambm podem ser armazenados nomes e valores de propriedades dos objetos.
Tipos de dados de Variveis:
Tipo

Tamanho

Caracter
de Tipo

Boolean

2 Bytes

Byte

2 bytes

Date

8 bytes

Integer

2 bytes

Long (Long Integer)

4 bytes

&

Single (Ponto Flutuante)

4 bytes

Double (Ponto Flutuante)

8 bytes

Currency

8 bytes

String

1 byte por caracter

Variant

qualquer valor ou
caracter

Visual Basic 5.0

39

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Obs.: As operaes com o tipo de dado Currency so mais rpidas e exatas que as com tipo Single e Double.

Visual Basic 5.0

40

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Dim QQValor

Declarao:
No Visual Basic no necessrio fazer a declarao de todas as variveis que voc estiver utilizando e quando isso
acontece, a linguagem assume que o Tipo de Dados da varivel no declarada Variant.
Voc pode declarar suas variveis utilizando: Dim, Private, Static ou Public. Existem duas maneiras de declarar
variveis no VB:
Usando AS
Dim j AS Integer

Usando o Caracter de Tipo


Dim I%

Dim nome AS String


Dim nome$
Para fazer declarao de mais de uma varivel na mesma linha de cdigo, utilize a sintaxe:
Dim endereco as String, nome as String

Com
este
tipo
de
decl
ara
o o
VB
assu
me
por
defa
ult o
tipo
Vari
ant
Valor

Observe que voc deve especificar o tipo de dado para cada uma das variveis declaradas. Se voc utilizar o exemplo QQValor = 17
Numrico
abaixo:
QQValor = 17
String
de
2
caracteres
Dim endereco, nome as String
QQValor = QQValor - 15
Valor numrico = 2 (17
Apenas a varivel nome ser do tipo String, o VB assumir a varivel endereco como tipo Variant.
2) QQValor = U +
QQValor
String U2
Variveis do tipo Variant
Variant pode assumir qualquer tipo de dado, ou seja, dependendo do valor dos dados que for atribudo a essa varivel, o
VB far a converso automaticamente para o tipo correto. Pode ser numrico, data ou string.
Na inicializao do VB, o tipo de dados Variant assume um valor Empty que no nem NULL, nem branco, nem zero.

Tipos de Dados (cont.)


Declarao e Operao de um Tipo Variant

Definindo variveis
Strings de tamanho
varivel e fixo:
Quando no se tem
certeza do tamanho de
uma String, possvel
declar-la com tamanho
varivel. Caso contrrio, o

Visual Basic 5.0

41

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

melhor a fazer declarar o tamanho fixo. Exemplo:

Quando uma varivel


Public declarada em um
mdulo esta reconhecida
Dim texto as String
por toda sua aplicao.
Dim texto as String * 50 declarao de uma varivel String com 50 posies.
Para
declarar
uma
varivel pblica, seja em
Inicializao de Variveis
um formulrio ou em um
mdulo use a sintaxe:
Quando uma aplicao em VB inicializada, automaticamente, as variveis numricas recebem 0 (zero) e as variveis
Public
String com tamanho definido, com brancos.
<nome_varivel>
As <tipo_dados>
Conveno de Nomes de Variveis
1. primeiro caracter deve ter uma letra (alfanumrico).
2. Podem ter letras, nmeros e underscore ( _ ).
3. Palavras reservadas do VB no podem ser declaradas como variveis.
4. O tamanho mximo que se pode assumir 255 caracteres.
5. Num mesmo escopo, a varivel deve ser nica.
Escopo das Variveis

Constantes

So
variveis
que
contm um valor fixo
durante toda a execuo da
aplicao.
Para
declarar
uma
varivel constante, use a
palavra reservada Const,
Local
por exemplo:
Const nome = Joo a
Uma varivel local reconhecida apenas na procedure/funo ou mdulo em que foi criada. Para criar um vaivel
v
local, coloque sua definio dentro da procedure/funo ou mdulo. As variveis que esto dentro da seo Declarations
ar
de um Mdulo.BAS so locais a este mdulo.Por exemplo:
i
Dim nome As String
v
el
N
Public
O
M
Existem
variveis
que
so
reconhecidas por
todas as procedures/funes de um Form.
E
Para isso, selecione o Form desejado, clique no boto View Code da janela Project e declare a varivel na seo
c
General. Desse modo, voc declara uma varivel pblica para o Formulrio em questo.
o

Visual Basic 5.0

42

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

nter sempre o valor Joo

durante

execuo

de

sua aplicao.

Qualquer
varivel
declarada
com
a
clausula
Tipos de Dados (cont.)
DIM local ao objeto,
ento as variveis var1 s
Escopo de uma Constante
pode ser utilizada pelo
Mdulo e a var2 ser
Uma constante quando definida ao nvel de Formulrio, ser apenas local, no sendo possvel mudar seu escopo. utilizada
apenas
pelo
Se for preciso a declarao de uma constante pblica, ser necessrio declar-la em um mdulo. Utilize a seguinte procedimento no qual foi
sintaxe:
declarada.
O procedimento Teste
Public Const <nome_varivel> = <valor>
local ao Mdulo - consegue
trabalhar com as variveis
var, var1, var2 e var6, esta
Static
ltima, desde que seja
Uma varivel Static no inicializada toda vez que um procedimento ou funo chamada, ser inicializada apenas declarada como pblica e se
referncia
ao
uma vez quando o Formulrio inicializado (LOAD).Uma varivel Static s pode ser declarada dentro de uma faa
formulrio
no
qual
ela
foi
funo/procedimento, ou seja, ela Local e existe enquanto o formulrio est ativo.
declarada.
O procedimento Teste1
local ao Formulrio
consegue trabalhar com as
seguintes variveis: var,
var4, var5 e var6.

NOTAS:
Escopo das variveis.

Na figura acima, a varivel var pblica, ou seja, o projeto inteiro pode trabalhar com esta varivel.

Visual Basic 5.0

43

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Fazer uma calculadora


que tenha as seguintes

operaes: soma,Form
subtrao,
diviso
e
multiplicao.Caption
=Formulrio do Exerccio

Exerccio 4: CalculadoraResoluo do Exerccio:

Name = Frmexerc
TextBox
Name = txtresult
Text = (BRANCO)
HScrollBar
Name = hScrPrim_valor
LargeChange = 10
Max = 1000
CommandButto
n Caption =
&Calcular

Visual Basic 5.0

44

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)
Name = cmdcalcular
OptionButton
Caption = Subtrao
Name = OptSub
OptionButton
Caption = Diviso
Name = OptDiv

Name = lblprim_valor
Label AutoSize =
True Caption =
Segundo Valor:

TextBox

Tela do Exerccio. Name = txtprim_num


Text = (BRANCO)
Private Sub cmdcalcular_Click()
If OptSoma.Value = True ThenLabel
txtresult = Val(txtprim_num) + Val(txtseg_num) AutoSize = True
ElseIf OptSub.Value = True Then Caption = Resultado da Operao:
Name = lblresult
ElseIf OptMult.Value = True Then
Frame Caption = Operaes
Name = Frame2
TextBox
Name = txtseg_num
Text = (BRANCO)
HScrollBar
LargeChange = 10
Max = 1000
Name = HScrSeg_valor
CommandButton Caption = &Sair Name = cmdsair OptionButton
Caption = Soma
Name = OptSoma
OptionButton
Caption = Multiplicao
Name = OptMult
Label AutoSize = True Caption = Primeiro Valor:

txtresult = Val(txtprim_num) - Val(txtseg_num)

Visual Basic 5.0

45

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)
Name = lblseg_valor

Crie um novo Project (A

txtresult = Val(txtprim_num) * Val(txtseg_num)


Private Sub hScrPrim_valor_Change()
ElseIf OptDiv.Value = True Then
txtprim_num = hScrPrim_valor.Value
End
If Val(txtseg_num) <> 0 Then End Sub End Sub

Private Sub cmdsair_Click()

txtresult = Val(txtprim_num) / Val(txtseg_num) Private Sub HScrSeg_valor_Scroll()


Private Sub hScrPrim_valor_Scroll()
Else
txtseg_num = HScrSeg_valor.Value
txtprim_num = hScrPrim_valor.Value
MsgBox "Diviso por Zero!" End Sub
End Sub
End If
Private Sub HScrSeg_valor_Change()
End If txtseg_num = HScrSeg_valor.Value
End Sub
End Sub

Criando Efeitos Especiais em Forms


No VB, existem controles que permite a criao de imagens geomtricas.
Controle Line usado para criar uma linha em seu formulrio (form). Suas propriedades mais importantes
so: BorderWidth, BorderStyle, BorderColor, Visible.

partir do menu File,


escolha a opo New
Project). No formulrio,
desenhe os controles Line,
Shape e modifique suas
propriedades.

Controle Shape usado para desenhar uma figura geomtrica em seu formulrio (form). possvel
selecionar o formato dessa figura. Os formatos so: retngulo, retngulo arredondado, quadrado, quadrado
arredondado, oval, circular. Suas principais propriedades so:
FillColor: permite definir a cor do objeto. (Preenchimento ) FillStyle: permite definir o padro do
preenchimento. Visible: permite que voc oculte ou exiba seu objeto.

NOTAS:
Teste!

Visual Basic 5.0

46

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Funes do Mouse

NOTAS:

Para criarmos esses


O VB permite que voc utilize o controle Image para criar botes de comando no estilo da barra de ferramentas em tipos de botes, estaremos
seus programas. Para criar esses botes, pode-se usar os seguintes eventos:
trabalhando com o controle
Image Box que mostrar a
imagem correspondente a
MouseDown: este evento detecta o pressionar do mouse.
ao que voc tomou. Por
MouseMove: detecta qualquer movimento com o mouse.
exemplo,
se
voc
MouseUp: detecta quando o usurio libera o boto do mouse.
pressionou
o
boto,
aparecer a imagem do
Os botes possuem trs estados:
boto pressionado.
No pressionado - esse o estado normal do boto. No est selecionado.
Pressionado - esse o estado do boto que est selecionado ou est ativo.
Desativado - o estado utilizado quando um boto no est disponvel para o programa.

possvel alterar os
estados dos botes atravs
da procedure de evento
MouseDown, por exemplo.

Mais algumas propriedades da Caixa Texto


FontBold: define se o texto da caixa de texto deve ser negrito ou no. Valor que recebe True se for configurar o
texto para negrito e False, caso contrrio.
FontItalic: define se o texto da caixa de texto deve ser itlico ou no. Valor que recebe True se for configurar
o texto para itlico e False, caso contrrio.
FontUnderline: define se o texto da caixa de texto deve ser sublinhado ou no. Valor que recebe True se for
configurar o texto para sublinhado e False caso contrrio.
Image Box
Tag: utiliza-se esta propriedade para identificar um objeto. No prximo exerccio, esta propriedade ser utilizada para
identificar o status do boto.

Visual Basic 5.0

47

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)
texto. Name =
Label1 Image
Name =
Image1

Usando
as
propriedades, eventos e
mtodos que o VB possui,
voc pode especificar como
Picture = ...\bldesse recurso deve se
up.bmp
em
sua
Tag = Para cima comportar
Visible = False aplicao.

Image Name
= Image4
Picture =
dwn.bmp

...\bld-

Tag = Para baixo


Visible = False
Image
Picture=
Tag = Para cima
Name = Image7
CommandButt
on Caption =
&Sair Name =
cmdsair Image
Name = Image2
Picture = ...\itl-up.bmp Tag = Para cima Visible = False
Image
Name = Image5
Picture =...\itl-dwn.bmp Tag = Para baixo Visible = False
Image Picture =
Tag = Para cima Name = Image8

Arrastar-e-Soltar (Drag and Drop)

Voc
pode
configurar a propriedade
DragMode de seu objeto
para 1 (que permite que o
objeto seja arrastado).

NOTAS:
Em aplicaes desenvolvidas em Visual Basic, voc pode utilizar muitos recursos para facilitar e agradar o
Se voc configurar a
usurio. Uma dessas caractersticas do VB, o Drag-and-Drop que permite que o usurio arraste um objeto at outro e propriedade DragMode do
solte-o.
objeto para Manual, para

Visual Basic 5.0

48

Centro de Computao

Propriedades

DragMode

DragIcon

Eventos

Mtodos

Gernciaque
de Atendimento
ao Cliente (e-mail apoio@ccuec.unicamp.br)
Permite
seu objeto seja
arrastado automaticamente
iniciar e terminar a ao de arrastar-e-soltar, ser
ou manualmente
preciso programar o mtodo Drag.
Especifica qual o cone que Os valores aceitos por este mtodo :
deve ser mostrado quando o
objeto arrastado.

DragDrop

Reconhece
quando
um
controle solto em outro
objeto.

DragOver

Reconhece
quando
um
controle arrastado em cima
de outro.

Drag

Inicia ou termina a ao de
arrastar manualmente.

Constante

Valor

Ao

VbCancel

Cancela a operao Drag-and-Drop

VbBeginDrag

Inicia a operao de arrastar.

VbEndGrag

Termina a operao 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 mtodos e
propriedades. Por exemplo: source.visible = false.
X, Y: que so coordenadas. X a coordenada horizontal e Y a coordenada vertical.

Visual Basic 5.0

49

Centro de Computao

Exerccio 5: Criando botes Grfico

Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)


Faa um programa que permita que o usurio digite s

numa caixa de texto e formate-o (Negrito, Itlico e Sublin


maneira que desejar.

Tela do Exerccio

Private Sub Image7_MouseDown(Button As Integer, Shift As Integer, X As Single

If Image7.Tag = "Para cima" Then


Image7.Picture = Image4.Picture
txttexto.FontBold = True
Private Sub Image9_ MouseDown(
Image7.Tag = "Para baixo"
Shift As Integer, X As Single, Y As S
Else
If Image9.Tag = "Para cima" Th
Image7.Picture = Image1.Picture
Image9.Picture = Image6.Pic
txttexto.FontBold = False
txttexto.FontUnderline = Tru
Image7.Tag = "Para cima"
Image9.Tag = "Para baixo"
End If
Else
End Sub
Image9.Picture = Image3.Pic
txttexto.FontUnderline = Fal
Image9.Tag = "Para cima"
End If
End Sub

Visual Basic 5.0

50

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Exerccio 6: Teste Arrastar-e-Soltar


Exerccio:

Resoluo do

Fazer um programa para testar o Arratar-e-Soltar no VB. Esse


Form

Image

programa deve permitir que voc arraste os objetos para a lata de lixo
Name = FormDrag_Drop

Name = Image5

= Teste Arrastar-e-Soltar

Picture = ..\trash02a.ico Stretch =

e depois coloque fogo.


Caption
True
Image
Name =
Picture
Stretch
Picture =
Stretch
Image
Name =
DragIcon = ..\fire.ico DragIcon = ..\gaspump.ico
Tela do exerccio. DragMode = Automatic
DragMode

Image
Image6
Name = Image4
= ..\trash02b.ico
DragIcon = ..\point11.ico
= True
DragMode = Automatic Visible = False
...\point11.ico
= True
Image
Image3
Name= Image2
Automatic
Picture = ..\fire.ico
Picture = ..\gaspump.ico
Stretch = True
Stretch = True
Tag = Fogo
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 If
End Sub

Visual Basic 5.0

51

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

NOTAS:
CommonDialog
Esse objeto permite exibir cinco caixas de dilogo nos padres do
Windows.
Apenas uma caixa de dilogo pode ser exibida a partir de um objeto
Common Dialog.
Para exibir uma determinada caixa de dilogo, deve ser utilizado o
mtodo correspondente caixa desejada.
Os contedos das caixas so controlados atravs de suas
propriedades, ou seja, quando uma caixa preenchida, os resultados
so apresentados por suas propriedades.
Caixas de Dilogo e sua utilizao:
Abrir: para abrir um arquivo.
Mtodo correspondente: ShowOpen
Salvar Como: para salvar um arquivo.
Mtodo correspondente: ShowSave Imprimir:
para definir as opes de impresso.
Mtodo correspondente: ShowPrinter
Fonte: para definir uma fonte e um estilo para textos.
Mtodo correspondente: ShowFont Cor:
para escolher uma nova cor da paleta.
Mtodo correspondente: ShowColor

Um objeto CommonDialog no visvel ao usurio em tempo de


execuo do programa.
Propriedades correspondentes CommonDialog Abrir:
Filter: define quais os tipos de arquivos devero 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. Os Flags
podem ser:
&H1&: Exibe a CommonDialog Cor padro, com as cores
personalizadas como opo.
&H2&: Exibe a paleta padro e a personalizada.
&H4&: Exibe a paleta padro com o boto de Cores
Personalizadas desabilitado.
&H8&: Exibe o boto de ajuda na CommonDialog Cor.
Color: esta propriedade utilizada para configurar a cor dos objetos
do VB que suportam cor. possvel modificar a cor do fundo de um
formulrio, as cores das formas no formulrio e as cores de fundo dos
objetos.

Visual Basic 5.0

52

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mailAapoio@ccuec.unicamp.br)
guia Images a parte principal para a criao da lista de

Controle ImageList
O controle ImageList utilizado para armazenar uma lista de
imagens para serem utilizadas nas barras de ferramentas, animaes e
aplicativos. Cada ImageList responsvel pela criao de apenas uma
lista de imagens.
Sua capacidade limitada pela mmoria de seu micro.

imagens, pois nela que se encontram as propriedades para insero


da 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.
Images
Mostra todas as imagens inseridas na lista na ordem em que
foram inseridas.
Image Count: exibe o nmero de imagens inseridas na lista

Para inserir um imagem Lista:


Utilize o boto Insert Picture, escolha a imagem e clique no
boto Open.
Para remover uma imagem da lista:
Selecione a imagem desejada e clique o boto Remove
Picture.

NOTAS:
Pgina de Propriedades.
Para exibir a Pgina de Propriedades do ImageList, selecione o
objeto no formulrio, clique-o com o boto direito do mouse e escolha
a opo propriedades.

Visual Basic 5.0

53

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Controle Toolbar
Este controle utilizado para criar barras de ferramentas padro
do Windows 95.

Key/Tag: texto para identificao do boto.


Value: define se deve estar pressionado ou no pressionado.
Style: estilo no qual o boto deve ser mostrado.
ToolTipText: texto explicativo sobre o boto que deve aparecer
para o usurio.
Image: se a ToolBar estiver associada uma ImageList, voce
pode utilizar uma imagem da lista de imagem atravs seu index.
Para inserir um novo boto, utilize: Boto Insert
Button.
Para excluir um boto da ToolBar:
Utilize o boto Remove Button.

NOTAS:

Pgina de Propriedades.
Para exibir a Pgina de Propriedades do ToolBar, selecione o
objeto no formulrio, clique-o com o boto direito do mouse e escolha
a opo Propriedades.
Na guia Buttons, principais propriedades:
Index: ndice do boto na barra de ferramentas.
Caption: texto que deve aparecer para descrever o boto.
Description: descrio da funo do boto.

Visual Basic 5.0

54

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Exerccio 7: Utilizando as Common Dialog


Fazer uma aplicao que permita a abertura de imagens e a
configurao do ambiente de trabalho pelo usurio (cores do
Formulrio). Deve tambem limpar a tela da Imagem quando o usurio
desejar.

Resoluo do Exerccio:
Form
Name = Form1
Caption = Abrindo Figuras
ToolBar
Name = Toolbar1
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"

Tela do exerccio em tempo de Design.

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 Select
End Sub
Imagem Box
Name = Image1

Visual Basic 5.0

55

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Image List
Name = ImageList1

Visual Basic 5.0

56

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Acesso
ao
Sistem
a de
Arquiv
os
O VB possui controles que permitem o acesso ao seu sistema de
arquivos, ou seja, so controles que permitem fazer a pesquisa em
diretrios e drives e a seleo de arquivos. Os controles so:

Controle DriveList: permite a pesquisa dos drives


vlidos em seu sistema.

Controle DirListBox: permite a pesquisa em pastas (


diretrios) existentes no drive selecionado.

Controle FileListBox: permite a seleo de um


arquivo especfico em uma pasta (diretrio).

FileName: quando um nome de arquivo selecionado, o VB


o coloca nesta propriedade (utilizado pelo controle FileListBox).

NOTAS:
Eventos mais utilizados:
Para DirListBox
Change() modifica o diretrio selecionado. Ocorre quando
o usurio d um duplo clique em um novo diretrio ou quando voc
muda a propriedade Path atravs de cdigo de programao.
Para DriveList
Change() Modifica o drive selecionado. Ocorre quando o
usurio seleciona um novo diretrio ou quando voc muda a
propriedade Drive atravs de programao.
Para FileListBox
Click: Ocorre quando o usurio pressiona o boto do mouse
em um objeto. Pode tambm ocorrer quando o valor de um controle (
objeto) mudado.
Outras propriedades do FileListBox

Trabalhando com as Propriedades:


Existem propriedades que no podem ser configuradas em tempo
de design do programa, ou seja, no possvel configur-las utilizando
a janela Properties (Janela de Propriedades). Elas s podem ser
configuradas em tempo do execuo:
Drive: recebe a letra do drive selecionado (utilizado pelo
controle DriveListBox).
Path: recebe o nome do diretrio selecionado (utilizado pelos
controles DirectoryListBox e FileListBox).

Archive: define se os arquivos do tipo Archive devem ser listados pelo controle.
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. As


propriedades 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.

Visual Basic 5.0

39

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Para especificar mais de um arquivo, utilize a seguinte sintaxe:


*.bmp;*.wmf;*.ico (sem espaamento entre os ponto-e-vrgula).

Exerccio 8: Programa para


Procura de Arquivos
Fazer um programa que permita a abertura de imagens .WMF,
.ICO, .BMP, .JPG, .GIF. Utilize, para isso, os objetos DriveList,
DirListBox e FileListBox.

DriveList
Name = drive1

FileListBox Name
= arquivos
Pattern = *.bmp;*.wmf;*.ico
Image Box
Name = imagem
Stretch = True

Command
Caption = Mostrar Figura
Enabled = False
Name = cmdfigura
DirListBox
Name = diretorios

Private Sub drive1_Change()


diretorios.Path = drive1.drive
End Sub
Private Sub diretorios_Change()
arquivos.Path = diretorios.Path End
Sub
Private Sub arquivos_Click()
cmdfigura.Enabled = True
End Sub
Private Sub cmdfigura_Click() ou Private Sub arquivos_Click()

Tela do Exerccio.

Form
Caption = Procura de Arquivos
Name = frmprocura

imagem.Picture=LoadPicture(arquivos.Path & "\" & arquivos.filename)

Resoluo do Exerccio:

End Sub

Command
Caption = &Sair
Name = cmdsair

Private Sub cmdsair_Click()


End
End Sub

Visual Basic 5.0

40

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Formulrios MDI
(Multiple
Document
Interface)
A Interface para Multiplos Documentos uma caracterstica muito
marcante na programao em ambiente Windows. Esses tipos de
Formulrios criam uma relao hierrquia entre um formulrio (que
o Formulrio MDI-pai) e os outros (que so os formulrios CHILD).
Esses programas so como o Word, que permite que vrios
documentos sejam abertos simultaneamente.
Caractersticas do Formulrios MDI
Um Formulrio Child sempre exibido na rea interna do
formulrio MDI-pai. No possvel mostr-lo fora desta rea. Quando
esse formulrio minimizado, seu cone aparecer no Formulrio
MDI-pai e no como um boto na barra de tarefas.
Quando o Formulrio MDI-pai minimizado, todas as janelas
existentes nele so minimizadas e so exibidas como um boto na barra
de tarefas.
As barras de menus dos formulrios Child so exibidos na barra de
menus do formulrio MDI-pai.

NOTAS:
Para criar uma aplicao MDI:
1.
Crie um novo Project
2.
A partir do Menu Project, escolha a opo Add MDI
Form.

Assim, voc criou um formulrio-pai. Para criar formulrios


filhos, voc precisa:
1.
A partir do menu Project, escolha a opo Add Form.
Nas propriedades do Formulrio-filho, configura a propriedade
MDI Child para True.
Para exibir todos os formulrios Child do seu Project num
Formulrio MDI-pai, configure a propriedade AutoShow (do
formulrio MDI-pai) para True.
Em formulrios do tipo MDI, no possvel desenhar controles
que no possuam a propriedade Align. Para desenhar objetos que
no possuam esta propriedade, desenhe um controle Picture no
formulrio e depois, dentro dele, desenhe os demais controles.
Exemplo:

Visual Basic 5.0

41

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Exerccio 9: Crie um programa MDI


Crie um novo Project. Neste Project, crie um formulrio-pai e
trs formulrios-filhos.

Resoluo do Exerccio:
MDIForm
Caption = Controle de Estoque
WindowState = Maximized
Name = MDIControl_est

Form
Caption = Formulrio para Incluso
MDIChild = True
Name = FrmIncluso
Form
Caption = Formulrio para Alterao/Excluso
MDIChild = True
Name = FrmAlt_Excl

Form
Caption = Formulrio para Consulta
MDIChild = True
Name = FrmConsulta

Tela do Exerccio

Visual Basic 5.0

39

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

NOTAS:
Trabalhando com
Menus

opo Menu Editor.

O VB possui uma ferramenta para a construo de menus: o


Menu Editor . Utilize-o para criar menus customizados em sua
aplicao.

Para construir um menu


Selecione um formulrio e a partir do menu Tools, escolha a

Quando os Menus so criados, vo


aparecendo nesta caixa na ordem
hierrquica em que foram criados.

Janela do Menu Editor

Cada item do seu Menu um objeto. Os itens so inseridos de forma


hierrquica.
Caption: Caixa de texto no qual voc deve inserir o nome do
menu que aparecer na barra de menu.

Visual Basic 5.0

40

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

NOTAS:
Para criar uma barra para separadorar no menu, digite apenas um
Para construir um
hfen.
menu
Para permitir o acesso ao menu pelo teclado, antes da letra, digite
(continuao)
um &. Quando voc estiver executando a aplicao, a letra estar
sublinhada e o usurio pode acessar o menu pressionando ALT + a
letra sublinhada.
Se voc precisar de um & ( e comercial) em seu menu, digite duas
vezes o smbolo no Caption.

Checked: define se deve ou no aparecer um check inicialmente


do lado esquerdo do item do menu.
Enabled: define se este menu deve ou no estar abilitado.

Name: Caixa de texto na qual voc deve inserir um nome para o


objeto. Esse nome s ser usado em programao, para se referir ao
item do menu. No aparecein no menu.
Index: Nesta caixa de texto voc define um valor numrico que
determina a posio do controle com o vetor. Esta posio no
relativa a posio da tela.
Shortcut: neste item voc define uma tecla de atalho para o seu
menu.
HelpContextID: Nesta caixa de texto voc define um valor
numrico para o Context ID que usado para encontrar o tpico
apropriado no arquivo de Help identificado pela propriedade HelpFile.
NegotiatePosition: neste item, voc pode determinar se e como
o menu aparecer em determinado formulrio.

Visible: define se o item do menu deve estar visvel ou no.


Use estes botes para mudar de nvel em um menu do
mais alto at o mais baixo. Voc pode criar at 4 nveis de submenus
no VB.
Use estes botes para mudar de posio de um item de
menu no mesmo nvel (para cima ou para baixo na lista de menu).
Os seguintes botes so para:

Next - utilizado para adicionar novos itens dentro do seu Menu.

Insert - utilizado para inserir menus entre os menus j listados.

Delete - utilizado para remover itens do seu Menu.


Para trabalhar com formulrios em menus, preciso utilizar
alguns mtodos para visualizao:

Visual Basic 5.0

41

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

NOTAS:
O mtodo Show utilizado para visualizar um Form.
< nome do formulrio>.Show
Com mtodo Hide, o Form permanece carregado na memria, mas
no visualizado pelo usurio.
< nome do Formulrio>.Hide
Os comandos Load e Unload trazem e tiram um Form da memria
respectivamente.
Load <nome do Formulrio>
Unload <nome do Formulrio>

Visual Basic 5.0

42

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

NOTAS:
Exerccio 10: Construa um Menu

Para
mostrar
os

formulrios de Incluso, Alterao/Excluso e Consulta a partir dos


menus, utilize os mtodos apresentados na pgina anterior (54).

Para este exerccio, abra o Project do exerccio anterior


(exerccio 9). E construa um menu como a figura abaixo mostra:

Tela do Exerccio

Visual Basic 5.0

43

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

o um Banco de Dados atravs do


DATA
CONTROL.
O que o Data Control?
O Data Control permite a ligao do Form com um banco de dados.
Atravs desse objeto, voc pode criar uma aplicao que mostre e
atualize seus dados sem precisar programar.
Com o Data Control, possvel trabalhar com recordsets vazios,
adicionar, editar e excluir registros. Em aplicaes mais sofisticadas,
voc precisa tratar algumas condies de erros que o Data Control no
trata.
Como funciona o Data Control?
Uma vez que a aplicao for executada, o Data Control usa as suas
propriedades para abrir um banco de dados selecionado, para criar um
banco de dados e para criar um recordset.

O Data Control possui setas que permitem que voc role pelos
registros da tabela aberta durante a execuo do programa e uma
legenda para descrever o contedo deste. Geralmente, essa
propriedade configurada com o nome do banco de dados que est
sendo utilizado.

Propriedades do Data Control


Existem algumas propriedades que devem ser configuradas para
que o Data Control possa acessar seu banco de dados.

Principais Propriedades (para exib-las, selecione o objeto e tecle


F4):
DataBaseName: indica o nome e o caminho do seu banco de
dados.
RecordSource: indica a tabela na qual o Data Control vai buscar
os dados.

NOTAS:
Mais algumas propriedades da Caixa Texto
Depois de

configurar

as
propriedades
DataBaseName
e
RecordSource, preciso vincular os dados trazidos pelo Data Control
com algum dos objetos oferecidos pelo Visual Basic para a
visualizao.
Neste curso, estaremos utilizando a Caixa Texto para visualizar e
trabalhar com os dados do Banco de Dados. Para isso, precisaremos
modificar 2 propriedades:
DataSource: Indica para a Caixa Texto qual Data Control possui
o campo que voc precisa visualizar.
DataField: Indicar qual campo do Data Control especificado pela
propriedade DataSource deve ser mostrado na Caixa Texto.
Obs.: Para visualizar as propriedades da Caixa Texto, selecione-a e
pressione a tecla de funo F4.

O que um Recordset?
um conjunto de linhas e colunas que contm todos dados da
tabela.
O Data Control que abre um banco de dados carrega esse Recordset.

Visual Basic 5.0

44

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Mtodos do Recordset

Sueli Piva
Rute Salim

MoveFirst: este mtodo move do registro atual para o primeiro


registro da sua tabela.
MoveNext: este mtodo move do registro atual para o prximo
registro.
MovePrevious: este mtodo move do registro atual para o registro
anterior.
MoveLast: move do registro atual para o ltimo registro da tabela.

Para especificar um tipo de Recordset, configure a propriedade


RecordsetType para:

BOF (Begin of File)

Mtodos para controlar o incio e o fim do arquivo


BOF: controla o incio do arquivo. EOF:
controla o final do arquivo.
Sintaxe: data1.recordset.BOF (para controlar o incio do arquivo).
data1.recordset.EOF (para controlar o fim do arquivo).

Sintaxe: data1.Recordset.Movefirst.

NOTAS:

EOF (End of File)

Recordset Type

Value

Table

Dynaset

Snapshop

2
Ana Campos
Jos Silva
Joo Castro

Acessando um Banco de Dados atravs


DATA CONTROL (continuao)

Por exemplo:
Private Sub cmdProximo_Click()
este boto tem a funo de navegar para o prximo registro do
Data Control.
If data1.recordset.EOF then
MsgBox Final de Arquivo!!
Else
Data1.recordset.movenext
MoveNext o mtodo utilizado para mover a posio do
Data Control para o prximo registro. End If
End Sub

doNOTAS:

Propriedades para a manipulao de Final de arquivo (EOF


end of file) e incio de arquivo (BOF - begin of file):

Visual Basic 5.0

45

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

O objeto Data Control tambm gerencia o que acontece quando


encontra um Recordset vazio (sem registros). As propriedades que
devemos trabalhar para controlar as aes que o Data Control deve tomar
so:
BOFAction: indica qual a ao que o Data Control deve tomar quando
a propriedade BOF for igual a TRUE, ou seja, quando for comeo de
arquivo. Valores possveis:
0. Move First: o Data Control mover o ponteiro para o primeiro
registro do arquivo.
1. BOF: o Data Control continua na posio de comeo de
arquivo.
EOFAction: indica qual a ao que o Data Control deve tomar quando
a propriedade EOF for igual a TRUE, ou seja, quando for fim de arquivo.
Valores possveis:
0. Move Last: o Data Control mover o ponteiro para o ltimo
registro do arquivo.
1. EOF: o Data Control continua na posio de fim de arquivo.
2. AddNew: indica que o Data Control deve ir para um novo
registro.

Objetos Associados (Data Bound) ao Data Control


Os objetos associados Data Bound so utis pois facilitam o
preenchimento dos objetos da tela com o contedo do banco de dados.
Existem 3 tipos de controles deste tipo:

1. Data Bound Combo box: semelhante a Caixa de


Combinao, com a diferena que quando associada a um Data
Control, preenchida automaticamente, opcionalmente atualiza um
campo de outra tabela que esteja associando a outro Data Control.

Para que a Caixa de Combinao funcione como o esperado,


preciso configurar algumas propriedades que esto listadas a seguir:
DataSource Name: especifica qual o Data Control ser atualizado
quando um seleo for realizada.
DataField Name: define qual o campo que ser atualizado no
Recordsetof especificado pelo DataSourcce.
RowSource Name: define qual o Data Control usado como origem
dos itens para a lista.
ListField Name: define o nome do campo no Recordset
especificado pelo propriedade RowSource que usado para preencher
a caixa combo.

Visual Basic 5.0

46

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

BoundColumn Name: o nome do campo no Recordset


especificado pelo RowSource para ser passado para a propriedade
DataField quando um seleo for feita.
BoundText Text: valor do campo da coluna associada. Quando
uma seleo feita, o valor passado para atualizar o Recordset
especificado pelo DataSource e DataField.

NOTAS:

Controle
Status Bar
Este controle permite a criao de uma barra de Status para o
usurio. A barra de Status utilizada para emitir informaes sobre a
tela atual aos usurios.

2.
Data Bound List: semelhante ao ListBox (Caixa de
Listagem). Pode ser preenchido automaticamente quando associado
um Data Control e opcionalmente, atualizar um Recordset de outro
Data Control. As propriedades da DBCombo Box valem para a Data
Bound List.

3.
Data Bound Grid: permite a manipulao de uma
srie de linhas e colunas representando um registro e campos do
Recordset do Data Control.

Exemplo da utilizao da Status Bar.


Propriedades do Controle:

O DBGrid semelhante ao Controle Grid, a diferena que com o


DBGrid,
preciso no preciso programar as linhas e colunas da tabela,
apenas associar um Data Control ao objeto que
automaticamente, o Grid ser preenchido

Visual Basic 5.0

47

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Index: ndice da mensagem na barra de status.


Text: texto que deve aparecer para descrever o boto.
Description: descrio da funo do boto.
ToolTipText: texto explicativo sobre o boto que deve
aparecer para o usurio.
Key/Tag: texto para identificao do boto.
Alignment: Define o alinhamento do texto da mensagem
dentro do Painel.
Para inserir um novo painel, utilize:
Boto Insert Panel.
Para excluir um painel da ToolBar:
Utilize o boto Remove Panel.
Pgina de Propriedades.
A guia mais importante para este treinamento, a guia Panels pois
nela que estaremos definindo as mensagens que devem ser mostradas
para os usurios.

NOTAS:
Para exibir a pgina de propriedades de um controle, clique com o
boto direito do mouse sobre o objeto selecionado e escolha a opo
Properties.

Principais propriedades:
A guia mais importante para este treinamento, a guia General

Visual Basic 5.0

48

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Controle SSTabpois nela que estaremos definindo as guias da tabela.

Visual Basic 5.0

49

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Este controle utilizado para dividir a tela do formulrio em vrias

Principais propriedades:

funes.
Current Tab: ndice da mensagem na barra de status.
Caption: texto que deve aparecer para descrever o boto.
Count: Nmero de guias.
TabPerRow: Nmero de guias por linha.
Orientation: Define a orientao das guias da SSTab, se as

Tab
Tab

guias devem estar no topo, a esquerda, a direita ou no embaixo.


0 ssTabOrientationTop: Alinhamento das guias no Topo da tabela.

Exemplo da utilizao do SSTab.

1 ssTabOrientationBottom: Alinhamento das guias embaixo da tabela.

2 ssTabOrientationLeft: Alinhamento das guias a Esquerda da tabela.

Propriedades do Controle: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 pgina de propriedades de um controle, clique com o boto direito do mouse sobre o objeto selecionado e escolha a opo Properties.

Visual Basic 5.0

50

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Pgina de Propriedades do Controle SSTab.

Resoluo do Exerccio:
Exerccio 11: Criando uma Consulta
Form Data Control

Data Control

Visual Basic 5.0

51

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Criar um consulta que acesse os dados das tabelas de Clientes e Name = FrmConsulta Name = data_cli

Name = data_order

Visual Basic 5.0

52

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Pedidos existentes no banco de dados nwind.mdb. Para isso, abra o Caption = Formulrio para DatabaseName =
Consulta

...\nwind.mdb

DatabaseName =

...\nwind.mdb

project do exerccio 10 e utilize o formulrio de Consulta.

RecordsetType = Dynaset RecordsetType = Dynaset


RecordSource = Customers
RecordSource =
TextBox TextBox
TextBox
DataSource = data_cli
DataSource = data_cli
DataSource = data_cli
DataField = CompanyName
DataField = ContactName
DataField = ContactTitle
Name = txtCompanyName Name = txtContactName Name = txtContactTitle
TextBox TextBox
TextBox
DataSource = data_cli
DataSource = data_cli
DataSource = data_cli
DataField = Address
DataField = City
DataField = Region
Name = txtcAddress
Name = txtCity Name = txtRegion
TextBox TextBox
TextBox
DataSource = data_cli
DataSource = data_cli
DataSource = data_cli
DataField = Country
DataField = PostalCode DataField = Phone
Name = txtCountry
Name = txtPostalCode
Name = txtPhone
Label
Label Label
AutoSize = True AutoSize = True
AutoSize = True Caption = Cidade:
Caption =
CEP:
Caption = Estado:
Label
Label Label
AutoSize = True AutoSize = True
AutoSize = True Caption = Telefone:
Caption =
Pas:
Caption = FAX:
Label
Label DBGrid
AutoSize = True AutoSize = True
Name: DBGOrders
Caption = Nome do Cliente:
Caption = Companhia
DataSource: data_orders
Label Label CommandButton AutoSize = True AutoSize = True Name = cmdSair
Caption = Cargo: Caption = Endereo:
Caption = &Sair
TextBox
DataSource = data_cli
DataField = Fax
Name = txtFax
Private Sub Data_Cli_Reposition()
Data_order.RecordSource = "Select * from Customers where
CustomerID = " & Data_cli.Recordset.Fields("CustomerID")

Visual Basic 5.0

53

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Funo InputBox

NOTAS:

Uma caixa de dilogo que permite a entrada de dados pelo usurio.


Sua sintaxe:
<variavel_string> = InputBox(mensagem, ttulo, valor Default)
Parmetros da funo:
Mensagem: a expresso que descreve o que deve ser digitado.
Ttulo: o ttulo da caixa de dilogo
Valor Default: o valor padro da InputBox, se nada for digitado.
Exemplo de uma caixa de dilogo InputBox:

Data_order.Refresh
End Sub

Visual Basic 5.0

54

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Localizando
registros com
o mtodo
SEEK
Para localizar registros em sua tabela aberta pelo Data Control,
voc pode utilizar o mtodo SEEK, o mtodo de procura mais rpido
pois utiliza um ndice da tabela aberta do banco de dados.
Sua sintaxe :

Data_produto.recordset.index = cod_produto
cod_produto o nome do ndice existente na tabela Produtos
Data_produto.recordset.seek =, txtcod_produto.text
Ser procurado na tabela o cdigo do produto que for igual ao
cdigo digitado na caixa de texto txtcod_produto.text.

NOTAS:
Esse mtodo, por utilizar um ndice da tabela, acessar o dado
procurado diretamente, no precisando percorrer toda a tabela
procurando pelo valor especificado pelo argumento. Se encontrar o
dado, posicionar o seu Data Control no registro.

<Data_Control.name>.Recordset.seek <comparao>, <chave>

onde o parmetro <comparao> uma string de comparao e


pode ter os seguintes valores: =, <=, >=, <>, < ou >
e <chave> o valor a ser procurado na tabela.
Para utilizar este mtodo de procura, precisamos configurar
algumas propriedades para o Data Control:
-

Tipo de Recordset a ser aberto necessariamente precisa ser


TABLE.
Sua tabela deve ter um ndice cadastrado pois teremos que
definir um ndice como chave da procura.

Para testar se o registro foi ou no encontrado, utilize o mtodo


NoMatch. Por exemplo:
If data_produto.Recordset.NoMatch then
< instruo >
Ou seja, se o registro no existir, ento, podemos inclu-lo.
If NOT data_produto.Recordset.NoMatch then
< instruo >
Quer dizer que o registro existe, ento, voc poder traz-lo para a
sua tela de consulta ou no permitir a entrada de um novo registro, pois
ele j existe.

As propriedades que sero alteradas so:


-

RecordsetType: indica o tipo de recordset a ser aberto.


Index: indica qual o ndice a ser utilizado para a busca.

Por exemplo:

Visual Basic 5.0

55

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Exerccio 12:
Localizando
Registros em um
Banco de Dados
Utilizando o exerccio anterior, crie um boto para localizar
registros na base pelo Nome do Cliente (use o mtodo SEEK).

Resoluo do Exerccio:
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 no localizado!!!")
Data_cli.Recordset.MoveFirst
End If
End If
End Sub

Mtodos para Incluso, Alterao e Excluso em NOTAS: Banco de


dados
Quando utilizamos o Data Control, os mtodos existentes para estas
operaes, so:

Visual Basic 5.0

56

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Para Incluso basta usar a seguinte sintaxe:


< data_control.name>.recordset.AddNew
O mtodo AddNew "prepara" a tabela para receber um novo registro.
Se este a tabela tiver uma chave primria, e o voc tentar incluir um
registro que j exista nela, um erro ser causado. Mais adiante veremos
como tratar esses erros no VB. No final da apostila temos uma lista de
erros gerados pelo VB.
Para alterao:
< data_control.name>.recordset.Edit Com este mtodo,
voc prepara o registro atual para edio.

Para efetuar as operaes de Incluso e Alterao use:


< data_control.name>.recordset.Update
Para excluso:
< data_control.name>.Recordset.Delete
Utilize o mtodo Refresh para atualizar os dados tabela aberta que
foram atualizados com as operaes de incluso, alterao e excluso.

Localizando
registros
com o
mtodo
FIND
Para localizar registros em sua tabela aberta pelo Data Control,
voc pode utilizar o mtodo FindFirst (significa "Encontrar o
Primeiro). 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 mtodo percorrer toda a sua tabela procurando pelo valor
especificado pelo argumento ("cod_produto = " & text1.text, onde
cod_produto o nome do campo da tabela e text1.text o nome do
objeto Caixa Texto da tela do seu formulrio) e posicionar o seu Data
Control no registro encontrado.

Visual Basic 5.0

57

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Para testar se o registro foi ou no encontrado, utilize o mtodo


NoMatch. Por exemplo:
If data_produto.Recordset.NoMatch then
< instruo >
Ou seja, se o registro no existir, ento, podemos inclu-lo.
If NOT data_produto.Recordset.NoMatch then
< instruo >
Quer dizer que o registro existe, ento, voc poder traz-lo para a
sua tela de consulta ou no permitir a entrada de um novo registro, pois
ele j existe.

NOTAS:
Atribuindo campos da tabela a Caixa Textos da tela do
Formulrio.
A sintaxe para atribuir os campos da tabela aberta pela Data
Control, 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 da
tabela: cod_produto.

Visual Basic 5.0

58

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Exerccio 13: Incluso de Novos Clientes


Fazer uma aplicao para incluso de novos clientes. Para isso, abra o
project do exerccio 10 e utilize o formulrio de incluso.

Tela do Exerccio.
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

Resoluo do Exerccio:

Data Control
TextBox
Name = data_cli
Name = txtFax
de
DatabaseName = Text = (BRANCO)
...\nwind.mdb
RecordsetType = Dynaset
RecordSource = Customers
TextBox
TextBox
TextBox
Name = txtCompanyName
Name = txtContactName
Name
=
Text = (BRANCO)
txtContactTitle
TextBox
Name = txtcAddress
Text = (BRANCO) Text = (BRANCO)
Text = (BRANCO)
TextBox TextBox
TextBox
Name = txtCity
Name = txtRegion
Name = txtCountry
Text = (BRANCO) Text = (BRANCO)
Text = (BRANCO)
TextBox TextBox
TextBox
Name = txtPostalCode
Name = txtPhone
Name = txtcod_cli
Text
=
(BRANCO)
Text
=
(BRANCO)
Text = (BRANCO)
Label
Label
Label
AutoSize = True
AutoSize = True
AutoSize = True Caption
= CEP: Caption = Estado:
Caption = Telefone:
Label
Label
Label
AutoSize = True
AutoSize = True
AutoSize = True
Caption = Nome do Cliente:
Caption = Pas:
Caption = FAX:
Label
Label
Label
AutoSize = True
AutoSize = True
AutoSize = True
Caption = Cargo:
Caption = Companhia
Caption = Cidade:
CommandButton
Label
Label
Name = cmdSair
AutoSize = True
AutoSize = True
Caption = &Sair
Caption = Endereo:
Caption = Cdigo do
Sub Limpa_campos()
Cliente::
CommandButton
Name = cmdIncluir
Caption = &Incluir
Form
Name = FrmInclusao
Caption = Incluso
Novos Clientes

data_cli.Recordset(Contry) = txtCountry.Text
txtcod_cli.Text = ""
data_cli.Recordset(PostalCode) =
txtPostalCode.Text
txtFax.Text = ""
data_cli.Recordset(Address) = txtAddress.Text
txtCompanyName.Text = ""
data_cli.Recordset(City) = txtCity.Text
txtContactName.Text = ""
data_cli.Recordset(Region) = txtRegion.Text
txtContactTitle.Text = ""
data_cli.Recordset(Phone) = txtPhone.Text
data_cli.Recordset(Fax) = txtFax.text

txtCountry.Text = ""

data_cli.Recordset.Update

txtPostalCode.Text = ""

Visual Basic 5.0

59

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)
Else
txtAddress.Text = ""
MsgBox "Cliente j cadastrado!!!"
End If txtRegion.Text = ""
Limpa_campos
End Sub
txtPhone.Text = ""

txtCity.Text = ""

End Sub

io 14 : Alterao e Excluso de Produtos Resoluo do Exerccio:


Fazer uma aplicao para alterao e excluso de produtos em um
almoxarifado. Para isso, abra o project do exerccio 10 e utilize o Name =

Form
FrmAltExcl

Data Control

TextBox

Name = data_cli

Name = txtFax

formulrio de alterao/excluso.

Caption = Incluso de Novos DatabaseName = ...\nwind.mdb Text = (BRANCO)


Clientes RecordsetType = Dynaset
RecordSource = Customers
TextBox
TextBox
TextBox
Name = txtCompanyName
Name = txtContactName
Name = txtContactTitle
Text = (BRANCO)
Text = (BRANCO)
Text = (BRANCO)
TextBox
TextBox
TextBox
Name = txtcAddress
Name = txtCity
Name = txtRegion
Text = (BRANCO)
Text = (BRANCO)
Text = (BRANCO)
TextBox
TextBox
TextBox
Name = txtCountry
Name = txtPostalCode
Name = txtPhone
Text = (BRANCO)
Text = (BRANCO)
Text = (BRANCO)
TextBox
Label
Label
Name = txtcod_cli
AutoSize = True AutoSize = True Text = (BRANCO)
Caption = CEP:
Caption = Estado:
Label
Label
Label
AutoSize = True
AutoSize = True AutoSize = True Caption = Telefone:
Caption = Pas:
Caption = FAX:
Label
Label
Label
AutoSize = True
AutoSize = True AutoSize = True
Caption = Nome do Cliente:
Caption = Companhia
Caption = Cidade:
Label

Label

Label

Tela do exerccio em tempo de Design. AutoSize = True


Sub Limpa_campos()

AutoSize = True

Private Sub cmdexcluir_Click() Name = cmdSair Name =

txtFax.Text = "" data_cli.Recordset.Delete Caption = &Sair Caption = &Incluir


txtContactName.Text = ""

AutoSize = True
Caption = Cargo:
cmdIncluir

Caption = Endereo:
CommandButton

Caption = Cdigo do Cliente::


CommandButton

txtcod_cli.Text = ""

txtCompanyName.Text = ""

data_cli.Refresh

Visual Basic 5.0

60

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)
txtContactTitle.Text = ""
txtCountry.Text = "" End Sub
= "" txtRegion.Text = ""
txtPhone.Text = ""
End Sub

Limpa_campos
txtPostalCode.Text = "" txtAddress.Text = "" txtCity.Text

Resoluo do Exerccio:
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_campos
End 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 no est cadastrado!!!"
txtcod_cli.Enabled = True
txtcod_cli.SetFocus
End If End Sub

Cdigos de Erros NOTAS:


Para evitar que o VB interrompa seu programa quando um erro
ocorrer, adicione a instruo On Error depois da declarao do Sub.
A instruo On Error deve ser seguida pelos comandos:
-

Resume Next
GoTo <label>

Visual Basic 5.0

61

Centro de Computao
Gerncia de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)

Resume Next
Com essa instruo, a execuo do programa volta para a instruo
imediatamente posterior quela em que o erro foi detectado pelo VB.
GoTo <label>
Quando acontece um erro, o VB desvia o fluxo de execuo para um
label definido no mdulo.
Exemplo:
Sub Form_Click()
On Error GoTo ErrorHandler
...
Exit Sub
ErrorHandler:
Label
MsgBox = Ocorreu o Erro & Err & .
Resume Next End Sub

Variveis e Constantes no VB
Tabela de Cores para a Funo QBCOLOR( )
Preto

Cinza

Azul

Azul claro

Verde

Verde claro

10

Ciano

Ciano claro

11

Vermelho

Vermelho claro

12

Magenta

Magenta claro

13

Amarelo

Amarelo claro

14

Branco

Branco brilhante

15

Visual Basic 5.0

62

Centro de Computao
Constante

Valor

Gerncia
de Atendimento ao Cliente (e-mail apoio@ccuec.unicamp.br)
Botes
Mostrados

VbOKOnly

OK

VbOKCancel

OK, Cancelar

VbAbortRetryIgnore

Anular, Repetir, Ignorar

VbYesNoCancel

Sim, No, Cancelar

VbYesNo

Sim, No

vbRetryCancel

Repetir, Cancelar

Constantes para Botes


Constantes de Sada da Funo MsgBox( )
Constantes de cones
Constante

Valor

Boto Clicado

Constante

Valor

cone Mostrado

VbDOK

Boto de OK foi clicado

VbCritical

16

cone de Stop

VbCancel

Boto de Cancelar foi clicado

VbQuestion

32

cone de ponto de interrogao

VbAbort

Boto de Anular foi clicado

VbExclamation

48

cone de ponto de exclamao

VbRetry

Boto de Repetir foi clicado

vbInformation

64

cone de Informao

VbIgnore

Boto de Ignorar foi clicado

VbYes

Boto de Sim foi clicado

VbNo

Boto de No foi clicado

Dicas para
Consulta
Links interessantes:
http://www.microsoft.com/vbasic
http://www.forumaccess.com/
http://www.bowmansoft.com/vbwm/
http://www.vbonline.com/ http://www.viquevb.com/
http://www.developersmagazine.com.br/ &

Livros/Revistas:
Revista Frum Access /Visual Basic/ Office
Revista Developers Revista brasileira para desenvolvedores.

Visual Basic 5.0

63