Você está na página 1de 88

Visual Basic

Autor:
Aulus Plautius Rosan

Introduo
O que o Visual Basic ?
O Visual Basic um compilador do tipo QuickBasic para criao de aplicativos
para Windows, ele na realidade, uma aplicao do prprio Windows. dessa
forma que os programas em Visual Basic podem ser criados, rodados, depurados
e compilados diretamente no Windows. O Visual Basic possibilita aos usurios a
programao baseada em eventos e objetos. Isto quer dizer que o programador
coloca na janela todas as opes (menus, botes, cones, controles, etc...) para
que o usurio selecione uma delas com o mouse ou com o teclado. Antes do
Visual Basic uma aplicao era desenvolvida em linguagem C, juntamente com o
Kit de Desenvolvimento de Software do Windows, o que demandava muito tempo
de aprendizagem.

Linguagem Baseada em Eventos


Ao darmos um clique com o mouse em um determinado objeto de um aplicativo
Visual Basic, por exemplo um boto, estamos gerando um evento dentro do
Windows o qual far com que um determinado pedao de cdigo seja executado.
Podemos, tambm, colocar da seguinte maneira: um determinado pedao de
cdigo foi executado em decorrncia de um evento gerado com o clique do
mouse. Se o tal boto nunca for apertado aquele cdigo poder jamais ser
executado. Programadores de linguagens voltadas para DOS, esto acostumados
a escrever cdigos que so executados de maneira sequencial, ou seja, o
programa orientado por sequncia, isto quer dizer que as linhas de cdigo so
executadas uma aps a outra durante todo o programa. Enquanto o programa no
chega na ltima linha de cdigo ele no para a no ser que o usurio intervenha
finalizando o programa antes que ele termine. No Windows diferente. No existe
um corpo de programa com incio, meio e fim. O programa orientado por
eventos. Normalmente, um programa para Windows apresenta vrias opes
possveis na tela para que o usurio as selecione conforme sua necessidade,
representando, assim, um modo completamente novo de se programar. O Visual
Basic uma linguagem baseada em eventos. Isso quer dizer que o responsvel
pelo fluxo do programa o usurio e no mais o programador. Devemos ter isso
em mente quando estivermos projetando um aplicativo. Na programao
orientada por sequncia, normalemente o usurio entra com os dados na
sequncia determinada pelo programador. O Visual Basic permite que o usurio
entre com os dados na ordem que preferir.

Linguagem Baseada em Objetos


Outra caracterstica importante do Visual Basic a de ser uma linguagem
baseada em objetos. As linguagens como o C++ e o Pascal por exemplo, tambm
baseadas em objetos, possuem classe e herana. No Visual Basic, os objetos so
pr-definidos, isto , j existe uma coleo de objetos que acompanham o
software. Para criar novos objetos, o programador dever utilizar a opo User
Control como sendo o tipo de projeto a ser realizado. Os novos objetos s
podero ser criados a partir de um outro objeto j existente, portanto basicamente
esse novo objeto ter as mesmas caractersticas do objeto que serviu de base.
Para criar objetos capazes de realizar funes diferentes dos objetos existentes,
voc dever cri-los em linguagem C. Dentro do Visual Basic, os objetos so, por

exemplo, menus, janelas, botes, quadros de texto, etc... Melhor especificados no


captulo sobre objetos. Cada um dos objetos possui vrias propriedades, mtodos
e eventos associados eles.

Ambiente de Desenvolvimento
O ambiente de programao do Visual Basic composto pelas seguintes
janelas: Janela Principal, Caixa de Ferramentas, Janela de Propriedades,
Janela de Projeto, Janela de Cdigo e Formulrio. atravs dessas janelas
que podemos escolher os objetos que faro parte do nosso programa, configurar
suas propriedades conforme a especificao do programa, escolher os eventos
que sero utilizados, etc.

Janela Principal

Essa janela a responsvel pelo controle geral do ambiente de programao do


Visual Basic e contm uma barra de ferramentas e de menus. O menu Help,
fornece informaes sobre todos os objetos e caractersticas do Visual Basic. Est
tambm disponvel, atravs da tecla "F1" um Help On-Line, no qual podemos
obter informaes detalhadas de um objeto previamente selecionado. Atravs
desses recursos, tambm podemos obter informaes sobre a linguagem
QuickBasic utilizada no Visual Basic. Com a barra de ferramentas, temos um
acesso mais rpido das funes do menu mais utilizadas.

Barra de Ttulo
A barra de ttulo a barra horizontal localizada no topo da tela; ela informa o
nome do aplicativo e comum a todos os aplicativos Windows da Microsoft.
Interaes entre o usurio e a barra de ttulo so manipuladas pelo Windows e
no pelo aplicativo. Tudo o que est abaixo da barra de ttulo e da barra de menu,

em um aplicativo Windows, chamado de rea do cliente. Seu aplicativo


totalmente responsvel pela aparncia, contedo e resposta dos objetos que voc
alojou nessa rea.

Barra de Objetos
Essa barra est localizada esquerda da tela do Visual Basic, logo abaixo da
barra de ferramentas e possui os objetos grficos (botes, caixas de texto, caixa
de figura, etc...) disponveis para serem utilizados dentro do projeto. O Visual
Basic chama esses objetos de controles. O ambiente que voc est utilizando
pode apresentar mais figuras do que o mostrado abaixo. Isso deve-se ao fato de o
Visual Basic ser um ambiente de programao aberto e extensvel, ou seja, alm
dos controles disponveis no Visual Basic, podemos adquirir outros controles
fornecidos por outras empresas ou construir o nosso prprio controle.

Janela de Propriedades
As propriedades definem as caracte- rsticas de cada
objeto - controle da aplicao. O conjunto de
propriedades depende do controle selecionado. Por
exemplo, um formulrio tem propriedades diferentes
de uma figura. As propriedades podem ser alteradas
em tempo de projeto ou de execuo, sendo que
algumas delas somente em tempo de execuo. Para
alterar o valor de uma propriedade em tempo de
execuo s por meio de programao a ser
carregada atravs de um objeto, por exemplo um
boto ou assim que o programa for carregado, j em
tempo de projeto, devemos:

1. Selecionar o controle cuja propriedade deseja alterar;


2. Rolar pela lista de propriedades at encontrar a propriedade desejada;
3. Digitar o novo valor;
4. Pressionar ENTER para confirmar a alterao efetuada.

Janela de Projetos

Esssa janela possui


uma lista dos
arquivos que esto
sendo utilizados
dentro do programa
que estamos
desenvolvendo.
Podemos ter
arquivos com
extenses "BAS" ,
"FRM" ,"VBP" e outros dentro dessa janela. O Visual Basic organiza os trabalhos
por projeto, permitindo que cada projeto possa ter vrios mdulos.

Janela de Cdigo
Essa janela con- tm a declarao de variveis, constantes e rotinas. Na figura ao
lado, po- demos ver dois quadros combo, um contendo a lista de objetos dentro
do nosso programa e o outro uma lista de eventos disponveis para cada um dos
objetos. Podemos observar na figura que o evento selecionado o "Click" e o
objeto o formulrio. O comando Beep na linguagem do Visual Basic gera um
aviso originrio do alto-falante do PC. Portanto cada vez que o usurio der um
clique com o mouse no formulrio o procedimento "Form_Click( )" ser executado
e gerar um "beep".

Funes e Sub-Rotinas
As funes (functions) e sub-rotinas (subs) so chamadas de procedimentos
(procedures). Existem trs tipos de procedimentos:
1.) do Visual Basic;
2.) associados aos eventos;
3.) criados pelo programador.
Os procedimentos do Visual Basic so, por exemplo, os mtodos, as funes
matemticas, as funes manipuladoras de "Strings", etc. Os procedimentos
associados aos eventos so aqueles procedimentos que so chamados em
resposta a um evento. Adicionamos cdigos a eles atravs da Janela de Cdigo
do formulrio. Os procedimentos criados pelo programador so aquelas subrotinas e funes utilizadas para melhorar a estruturao do cdigo. Podemos ter,
por exemplo, uma funo que abre um arquivo. Essa funo trataria os possveis
erros e retornaria o nmero do arquivo aberto. Esse procedimento estaria
declarado dentro do objeto "General" da Janela de Cdigo de um formulrio ou
de um mdulo. Dentro do Visual Basic, a diferena entre uma funo e uma subrotina que a funo retorna um valor e a sub-rotina no.

Formulrio

Essa a janela do nosso aplicativo. Quando o usurio iniciar o programa, a


mesma aparecer. A janela possui os quadros minimizar, maximizar, fechar e
menu de controle. nessa janela que colocaremos os controles grficos (botes,
quadros de texto, etc) e tambm o cdigo associado a esses objetos. Para abrir
uma janela de cdigo, basta dar um duplo clique em cima do objeto do qual um
evento deve ser tratado.

Menus
Menu File
Voc precisar do menu principal File para trabalhar com os arquivos que
compem seu projeto. Esse menu inclui comandos para salvar, abrir e imprimir
arquivos. O menu File tambm permite que voc saia do Visual Basic atravs de
um item para isso, a outra maneira utilizando as teclas de combinao do
Windows ALT + F4 quando estiver posiconado na barra de menu principal. Como
em qualquer aplicativo Windows, voc tambm poder abrir a caixa de controle na
barra de menu e escolher Exit ou dar um duplo clique nessa caixa.
A maioria dos itens do menu principal File til apenas quando voc inicia o
desenvolvimento de seu prprio aplicativo. Abaixo segue um breve resumo sobre
os itens para orient-lo melhor:

Menu Edit
Abaixo segue um breve resumo sobre os itens para orient-lo melhor:

Menu Project

O menu Project comtm itens que possibilitam a insero de vrios


procedimentos, janelas, cdigos, mdulos, etc. em seus projetos. Abaixo segue
um breve resumo sobre os itens para orient-lo melhor:

Menu Format

Menu Debug

Menu Run

Menu Tools

Menu Add-Ins
O menu Add-Ins lhe permite acessar ferramentas separadas que podem ser
incorporadas ao Visual Basic. Existem dois Add-Ins fornecidos com vrias verses
do Visual Basic. O Report Manager, que representado pelo software da empresa
Seagate Crystal Reports, atualmente na verso 7.0, uma ferramenta completa
para modificar e criar relatrios que voc poder utilizar em seu programa. A outra
ferramenta inclusa o Visual Data Manager, que usado para gerenciamento de
Banco de Dados. Utilize o Add-In Manager para adicionar e remover Add-Ins do
menu.
Abaixo segue um breve resumo sobre os itens para orient-lo melhor:

Menu Window

Menu Help

Barra de Ferramentas

Janelas
Janela de Projetos

Esta janela comtm informaes sobre o projeto em uso. nela que sero
exibidos todos os projetos utilizados ao mesmo tempo, caso existam, ou o nico
projeto aberto. Abaixo do projeto, estaro definidos os nomes dos formulrios em
uso no projeto.
Voc notar que existem dois nomes independentemente do que estiver sendo
exibido nesta janela. O primeiro nome o nome lgico (nome dado ao objeto) e
o segundo nome o nome fsico (nome dado ao arquivo), este estar sendo
exibido sempre entre parnteses.
Ainda nesta janela atravs das cones, temos a possibilidade de ir at a janela de
cdigo, (janela em que se programa as atividades para os objetos), voltar para o
modo de exibio do formulrio e tambm exibir os formulrios em formato de
pastas de um projeto.

Janela de Propriedades

nesta janela que o programador altera as caractersticas originais dos objetos


utilizados no(s) formulrio(s) do programa. Quando se cria um objeto dentro do
formulrio, devemos selecion-lo clicando apenas uma vez nele mesmo no
formulrio e depois clicar na janela de propriedades, onde sero isoladas apenas
as propriedades do objeto selecionado. Ento o programador ir alterar algumas
das propriedades adequando assim o objeto a ficar com as caractersticas e
aparncia desejada.
Esta mesma janela, possui uma caixa combo situada ao topo. Esta caixa contm
o nome de todos os objetos utilizados no formulrio em desenvolvimento.
Esta a outra forma do programador localizar e selecionar o objeto para trabalhar
com suas propriedades sem ter que selecion-lo no formulrio.
Obs: As propriedades dos objetos tambm podem ser alteradas atravs de
programao na janela de cdigo, para que os objetos sofram as alteraraes no
decorrer do programa, devido aos eventos em que foram programados.

Janela de Posicionamento do Formulrio

atravs desta janela que o programador posiciona o local em que o formulrio


aparecer assim que o programa for executado. Outra maneira de fazer isto,
acessando a propriedade do formulrio Startup Position e escolher a opo
CenterScreen, mas no ser possvel acessar esta propriedade, caso esteja
sendo usado um formulrio do tipo MDI. Ento o posicionamento dever ser feito
atravs de programao ou por esta janela.
Como centralizar um formulrio atravs de programao:

Private Sub Form_Load ( )


Top = (Screen.Height - Height) / 2
Left = (Screen.Width - Width) / 2
End Sub

Comandos mais Utilizados


Os comandos mais comumente utilizados no Visual Basic, esto descritos nos
sub-tens deste captulo, so eles:

Comandos
MsgBox (Caixa de Mensagem)

Objetivo
Emitir um aviso ao usurio

InputBox (Caixa de Entrada)

Pedir informao ao usurio

If...End If (Se...Fim)
Unload me - End (Encerrar)

Fazer Perguntas ou Validaes


Fechar um Formulrio ou Software

Comentrios
Comentrios so utilizados, como lembretes de informao junto programao e
so muito importantes porque podero auxiliar na documentao do software.

MsgBox
Exibe uma mensagem em uma caixa de dilogo, esperando pelo usurio clicar um
boto, e retorna um valor indicando que o usurio clicou o boto.

Sintaxe
MsgBox(prompt[, buttons][, title][, helpfile, context])
A sintaxe do comando MsgBox tem estes argumentos:

Partes

Descrio

Prompt

Expresso texto exibida como a


mensagem em uma caixa de dilogo. A
quantidade mxima de caracteres que
podero ser utilizados em uma
mensagem de aproximadamente
1024 caracteres, dependendo da

largura ocupada pelos caracteres


usados. Se a mensagem consiste em
mais do que uma linha, voc pode
separar as linhas usando um caracter
de retorno (Chr(13)), alimentando linha
com um ENTER, caracter (Chr(10)),
alimentando linha com a quebra da
mesma, ou ainda usar uma
combinao (Chr(13) & Chr(10)) entre
cada linha.
Expresso numrica que representa a
soma dos valores, especificando o
nmero e o tipo de botes para exibir,
o estilo da cone para usar, a
identidade do boto padro, e a
modalidade da caixa de mensagem.
Veja as opes na seo para valores.
Se omitidos, o valor padro para
botes 0.

Buttons

Expresso de texto exibida na barra de


ttulo da caixa de dilogo. Se voc
omitir o ttulo, o nome da aplicao
entra no lugar da barra de ttulo.

Title

No suportada.

Helpfile
Context

No suportada.

Opes
As opes de argumentos do boto so:
Constantes

Valor

Descrio

vbOKOnly
vbOKCancel
vbAbortRetryIgnore

0
1
2

Exibe somente o boto de ok.


Exibe os botes de ok e cancelar.

vbYesNoCancel
vbYesNo
vbRetryCancel
vbCritical

3
4
5
16

Exibe os botes sim, no e cancelar.


Exibe os botes de sim e no.
Exibe os botes repetir e cancelar.

vbQuestion

32

Exibe a cone de questo.

Exibe os botes abortar, repetir e


ignorar.

Exibe a cone de mensagem de


parada crtica.

vbExclamation
vbInformation
vbDefaultButton1
vbDefaultButton2
vbDefaultButton3
vbDefaultButton4
vbApplicationModal

48
64
0
256
512
768
0

Exibe a cone de mensagem de alerta.


Exibe a cone de mensagem informativa.
O primeiro boto padro.
O segundo boto padro.
O terceiro boto padro.
O quarto boto padro.

vbSystemModal

4096

Modalidade do Sistema; todas as


aplicaes so suspendidas at que
o usurio responda a caixa de
mensagem.

Modalidade da Aplicao; o usurio


dever responder a mensagem da
caixa antes de continuar trbalhando
na aplicao em utilizao.

O primeiro grupo de valores(05) descreve o nmero e o tipo de botes exibidos


na caixa de dilogo; o segundo grupo (16, 32, 48, 64) descreve o estilo da cone;
o terceiro grupo (0, 256, 512, 768) determina qual boto o padro; e o quarto
grupo (0, 4096) determina a modalidade da caixa de mensagem. Quando estiver
adicionando nmeros para criar um valor final para os argumentos dos botes,
use somente um nmero de cada grupo.

Retorno de Valores
A caixa de mensagem segue os valores retornados abaixo:

Constantes

Valor

Botes

vbOK

OK

vbCancel

Cancelar

vbAbort

Abortar

vbRetry

Repetir

vbIgnore

Ignorar

Obs: Se a caixa de
dilogo exibe um
boto de cancelar,
No
vbNo
7
pressionando a tecla
ESC obtem-se o mesmo efeito como ter clicado o boto de cancelar.

vbYes

Sim

InputBox
Descrio
Exibe um prompt em uma Caixa de Dilogo, esperando que o usurio entre com
um texto ou clique um boto, e retorna o contedo de um TextBox.

Sintaxe
InputBox(prompt[, title][, default][, xpos][, ypos][, helpfile, context])
A sintaxe do InputBox possui estes argumentos:

Partes

Prompt

Descrio
exibida uma mensagem em formato
texto em uma caixa de dilogo. O
tamanho mximo da mensagem
aproximadamente 1024 caracteres,
dependendo da largura dos caracteres
usados. Se a mensagem consiste de
mais do que uma linha, voc pode
separar as linhas usando um caracter
de retorno (Chr(13)), alimentando linha
com um ENTER, caracter (Chr(10)),
alimentando linha com a quebra da
mesma, ou ainda usar uma
combinao (Chr(13) & Chr(10)) entre
cada linha.

Title

Expresso de texto exibida na barra de


ttulo da caixa de dilogo. Se voc
omitir o ttulo, o nome da aplicao
entra no lugar da barra de ttulo.

Default

Expresso de texto exibida na caixa de


texto como a resposta padro se outra
entrada no providenciada. Se voc
omitir default, a caixa de texto exibida
vazia.

xpos

ypos
Helpfile
Context

Expresso numrica que especifica,


em pixels, a distncia horizontal da
margem esquerda da caixa de dilogo
da margem esquerda da tela. Se xpos
omitida, a caixa de dilogo
centralizada horizontalmente.
Expresso numrica que especifica,
em pixels, a distncia vertical da
margem superior da caixa de dilogo
do topo da tela. Se ypos omitida, a
caixa de dilogo posicionada
verticalmente aproximadamente em 1/3
da altura da tela.
No suportada.
No suportada.

Obs: Se o usurio clicar OK ou pressionar ENTER, o retorno da caixa de entrada


contudo est na caixa de texto. Se o usurio clicar Cancelar, o retorno um texto
de tamanho zero ("").

IF ... ENDIF
Condicionalmente executa uma seleo de comandos baseados no valor de uma
expresso lgica.

Sintaxe
IF Expresso [THEN]
Comandos
[ELSE
Comandos]
ENDIF

Argumentos
Expresso
Especifica a expresso lgica que recebe valor. Se a Expresso recebe valor
verdadeiro (.T.), qualquer comando seguido do IF ou THEN e prescedendo ELSE
ou ENDIF (que sempre ocorrero primeiro) so executados.

Se a Expresso falsa (.F.) e o ELSE includo, qualquer comando depois


do ELSE e antes do ENDIF executado.

Se a Expresso falsa (.F.) e o ELSE no includo, todos os comandos


entre o IF e o ENDIF so ignorados. Neste caso, a execuo do programa
continua com o primeiro comando seguindo at o ENDIF.

Obs: Voc pode definir um bloco IF ... ENDIF sem outro bloco IF ... ENDIF. Os
comentrios precedidos por && podem estar especificados em alguma linha
depois de IF, THEN, ELSE, and ENDIF. Estes comentrios so ignorados durante
a compilao e execuo do programa.

Unload - End
Unload
O comando Unload utilizado para fechar formulrios que integram um projeto.
Pode ser usado de duas formas:
Sintaxe:

Unload Me;

Unload Form1.

Quando escrevemos Me, estamos nos referindo ao formulrio atual em uso. Isto
feito para substituir o nome do formulrio, quando o nome fornecido a ele na
propriedade name muito grande. J no segundo caso, utilizamos o nome de um
Formulrio. Portanto, mesmo estando em um determinado formulrio, ao
clicarmos em um boto por exemplo, podemos estar fechando um outro
formulrio, basta apenas escrever Unload e fornecer o nome do formulrio a ser
fechado.
Os nicos casos em que o comando Unload seguido de Me ou diretamente do
nome de um Form qualquer poder estar fechando um projeto, sero:

Se estivermos diretamente no formulrio principal de um sistema;

Se estivermos na nica tela de um programa.

End
O comando End utilizado para encerrar o programa, lembrando que End
significa Fim. Geralmente encontra-se em um tem de menu descrito como Sair ou
Fechar, em um boto, ou diretamente na programao, fazendo com que o
sistema encerre-se propositalmente aps algumas interas do usurio.

Comentrios
Comentrios so acrescidos ao programa para explicar o que um cdigo faz.
muito simples perguntar-se por que os comentrios so importantes - at que
voc tente modificar ou consertar um programa que algum escreveu ou mesmo
que voc escreveu meses atrs. Os comentrios no so executados nem
processados pelo Visual Basic. Eles no ocupam nenhum espao nos cdigos
compilados. Existem duas formas de indicar um comentrio. A forma usual
indicar um comentrio com aspas simples. Veja o exemplo abaixo:
Private Sub Command1_Click ( )
' Um comentrio descrevendo o procedimento que viria aqui
' Toda linha de comentrio ficar na cor verde
End Sub
Obs: Voc pode utilizar a velha palavra-chave Rem.
Voc poder tambm acrescentar comentrios no final das linhas. Nesse caso
mais prtico utilizar aspas simples, porque a forma Rem requer dois-pontos antes
dele.

Objetos
A Terminologia do Visual Basic
Propriedade, Mtodo e Evento
O Visual Basic composto de formulrios e controles genericamente chamados
de objetos. Cada um dos objetos possui vrias propriedades listadas na Janela
de Propriedades.
As propriedades dos objetos nos permitem saber e modificar as caractersticas
desses objetos. Por exemplo, o nome, a cor, o tamanho, a legenda, o tipo e o
tamanho da fonte com que o texto aparece e sua posio, so propriedades
associadas aos quadros de texto, "Labels" (legendas) e botes de controle, opo
e de seleo.
Ao selecionarmos um determinado objeto, dando um clique com o mouse sobre
ele, a Janela de Propriedades automaticamente listar as propriedades
disponveis para aquele objeto e ento poderemos modific-las.
Cada objeto reconhece as seguintes aes, tais como um clique do mouse,
abertura de formulrio, digitao em um quadro de texto, etc. Essas aes so
chamadas de eventos.

Para uma aplicao responder s aes do usurio e aos eventos do sistema, so


utilizados os procedimentos associados a cada evento. Por exemplo, um boto de
controle reconhece os seguintes eventos:
Eventos
Click
DragDrop
DragOver

Aes
Um boto acionado com o mouse ou com o teclado.
Um controle solto em cima do boto.
Um controle est sendo arrastado sobre o boto.

GotFocus

O boto recebe a ateno do sistema, ou seja, qualquer ao do usurio


atravs do mouse ou teclado ser recebida pelo boto.

KeyDown

Uma tecla pressionada enquanto o boto tem a ateno do sistema.

KeyPress Uma tecla pressionada e um valor AscII retornado.


LostFocus O boto perde a ateno do sistema para outro objeto.

Quando um evento ocorre em uma aplicao, o sistema automaticamente


reconhece o evento e executa o cdigo associado a esse evento escrito pelo
programador. Esse cdigo chamado de procedimento do evento ("Event
Procedure"). Esse procedimento aparece na Janela de Cdigo.
O nome do procedimento associado ao evento composto pelo nome do objeto e
pelo nome do evento. O nome do objeto para todos os formulrios "Form" e
para os controles o que aparece na propriedade "Name" do controle.
Devemos escrever cdigo somente para os eventos que sero utilizados em
nossa aplicao.
O mtodo um procedimento ("Function ou Sub") que atua nos objetos. Por
exemplo, um quadro de lista um controle que possui os seguintes mtodos:
Mtodos
Aes
AddItem

Adicionar um novo item no quadro de lista durante o tempo de


execuo, ou seja, quando o programa est sendo executado.

Clear

Limpar o contedo do quadro de lista.

Move

Movimentar o quadro de lista para uma nova posio no formulrio.

Refresh Forar uma atualizao imediata o quadro de lista.


RemoveItem Remover um item do quadro de lista.
SetFocus

Fazer com que o sistema transfira sua ateno para o quadro de


lista.

Formulrios
Os formulrios so utilizados como interface com o usurio dentro de uma
aplicao. Cada formulrio uma janela que pode conter controles, grficos e
outros formulrios. Podemos utilizar os formulrios como uma tela de ilustrao,
um quadro de dilogo ou como um formulrio que contm outro. Podemos
modificar o tamanho e localizao na tela do formulrio, clicando e arrastando o
mouse na borda e na barra de ttulo desse formulrio, respectivamente.
Alm dos controles, os formulrios podem conter cdigo e variveis. Na verdade,
cada formulrio possui a prpria janela de cdigo. Dentro do objeto "General" da
janela de cdigo, podemos declarar variveis, constantes e procedimentos criados
por ns. Na janela de projeto, os arquivos com extenso ".FRM" contm, cada um,
um formulrio, os controles contidos nele, uma lista das propriedades do

formulrio e dos controles, as variveis e constantes utilizadas e o cdigo


associado.
Um projeto pode conter vrios formulrios e podemos adicionar um novo
formulrio selecionando o item "Add Form" dentro do menu "Project". Podemos ter
ainda outro tipo de formulrio: o do tipo "MDI" (Multiple Document Interface). Esse
tipo de formulrio pode conter outros formulrios dentro dele. Cada projeto pode
conter apenas um formulrio do tipo "MDI". Os formulrios que esto dentro do
formulrio "MDI" possuem a propriedade "MDIChild" como "True" e so
chamados de formulrios Filho. Adicionamos um formulrio "MDI" ao projeto
selecionando o item "Add MDI Form" dentro do menu "Project".

Controles
Sao ferramentas utilizadas nos formulrios para receber e mostrar informaes.
Os quadros de texto, botes, rtulos,quadros de figuras, etc., so exemplos de
controles. Os controles disponveis em um projeto so mostrados na Caixa de
Ferramentas ("ToolBox") e possuem a extenso de arquivo "OCX". Para inserir
uma ferramenta de controle em seu projeto em Visual Basic, voc deve selecionar
o item "Components..." dentro do menu "Project", normalmente os arquivos
".OCX", encontram-se no diretrio "WINDOWS\SYSTEM", mas voc pode
import-los de outros diretrios normalmente.
Podemos inserir um controle no formulrio de trabalho de duas maneiras:
1. Dando um duplo clique com o mouse no controle localizado na caixa de
ferramentas;
2. Selecionar o controle na Caixa de Ferramentas. Dar um clique com o boto
do mouse na posio desejada do formulrio (ponto inicial) e arrastar at
conseguir o tamanho desejado, soltando em seguida o boto (ponto final).
Para os controles j localizados no formulrio, podemos modificar o seu tamanho
da seguinte maneira:
1. Selecionar o controle do formulrio dando um clique com o mouse;
2. Apertar o boto da esquerda do mouse sobre um dos quadrados
localizados na borda do controle;
3. Arrastar o mouse at o tamanho desejado;
4. Soltar o boto.
Podemos mudar a posio dos controles localizados no formulrio da seguinte
maneira:
1. Posicionar o apontador do mouse no meio do controle;
2. Apertar o boto da esquerda do mouse e arrastar at a posio desejada;
3.

Soltar o boto.

Para modificar a propriedade dos controles, devemos:


1. Selecionar o controle;
2. Selecionar a propriedade desejada da Janela de Propriedades;
3.

Modificar a propriedade.

Mdulos

So arquivos de extenso ".BAS" que contm declaraes (variveis e


constantes) e procedimentos (funes e subrotinas). Podemos criar um mdulo
selecionando o item "Module" dentro do menu "Project". O Visual Basic mostra
uma janela de cdigo com o ttulo "Module". Podemos tambm ver, na janela de
projeto, o arquivo criado.
aconselhvel trocarmos o nome padro dado pelo Visual Basic, pois os arquivos
".BAS" so uma maneira de reaproveitarmos as mesmas funes e subrotinas
para vrias aplicaes. Selecionando o item "Save File As..." dentro do menu
"File", podemos fazer essa alterao.

Projeto
um arquivo ".VBP" que contm a lista dos fornulrios, mdulos e controles que
compem uma aplicao. Repetindo, a Janela de Projeto lista todos os arquivos
da aplicao. Cada projeto contm pelo menos um formulrio. Podemos inserir
quantos formulrios desejarmos dentro de um projeto. Selecionamos o item "New
Project" dentro do menu "File" para criarmos um novo projeto. O Visual Basic abre
esse novo arquivo com o nome padro de "Project1.vbp" aconselhvel
modificarmos esse nome, selecionando o item "Save Project As..." dentro do
menu "File".

Etapas de Desenvolvimento de um Projeto


H trs etapas para a criao de um aplicativo em Visual Basic.
1. Criar a interface com o usurio;
2. Configurar as propriedades dos objetos;
3.

Escrever o cdigo.

Para criarmos a interface com o usurio, podemos seguir os seguintes passos:


1. Abrir um novo projeto;
2. Salvar o projeto e o formulrio criado com os nomes desejados;
3. Modificar o tamanho do formulrio, adequando-o aos requisitos do
programa.
4. Adicionar os controles necessrios (botes, quadros de texto, etc.);
5. Adicionar mais formulrios e controles;
6. Salvar esses formulrios com os nomes escolhidos;
7.

Salvar todo o projeto.

Na segunda etapa do desenvolvimento, devemos configurar as propriedades de


todos os objetos. muito importante, nessa etapa, darmos nome a cada um dos
objetos, configurando-os atravs de sua propriedade "Name". aconselhvel,
para uma boa documentao, incluirmos no nome do objeto o seu tipo tambm.
Por exemplo, podemos dar o nome "frmprincipal" para a janela (formulrio) que
iniciar a aplicao. No item "Properties..." do menu "Project", podemos ver e
alterar o formulrio que inicia o aplicativo.
Na terceira etapa, adicionamos o cdigo, ou seja, projetamos como o programa
responder aos diferentes eventos (cliques, duplo cliques, teclas adicionadas,
interrupo causada pelo temporizador, redimensionamento de uma janela, etc.).

Devemos lembrar que essas trs etapas no dispensam um projeto de software


detalhado, isto , como o programa dever funcionar, como ser o fluxo de dados
dentro do programa, os algortmos utilizados, a interface com o usurio, etc.

Propriedades e Eventos mais Utilizados


Propriedades comuns a todos os objetos:
Proriedades
Aes
BackColor Determinar a cor de fundo de um objeto.
Enabled

Font
ForeColor
Height
Left
MousePointer

Name

Determinar se o formulrio ou controle podem responder aos


eventos gerados pelo usurio.
Determinar a fonte, o estilo e tamanho a ser usada para mostrar
um texto em um controle; usada tambm em tempo de
execuo para desenhar e imprimir.
Determiar a cor do texto impresso.
Determinar a dimenso vertical externa de um objeto.
Determinar a distncia entre a borda esquerda de um objeto e a
borda esquerda do objeto que a contm.
Determinar o tipo do ponteiro do mouse mostrado quando ele est
sobre uma parte especfica de um formulrio ou controle.
Especificar o nome usado no cdigo para identicar um fomulrio,
controle ou objeto de acesso a dados. No est disponvel em
tempo de execuo.

ToolTipText

Exibir uma janela de assistncia junto ao ponteiro do mouse,


movendo-o sobre um formulrio ou controle.

Top

Determinar a distncia entre a borda interna superior de um


objeto e a borda superior do objeto que o contm.

Visible
Width

Determinar se o objeto est visvel ou no.


Determinar a dimenso horizontal de um objeto.

Eventos comumente utilizados nos objetos:


Eventos

Aes

Activate

Ocorre quando um formulrio se tornar uma janela ativa.

Change

Ocorre quando o contedo de uma caixa de combinao (caixa


combo), barra de paginao (barra de rolagem), etiqueta, caixa
de figura ou caixa de texto mudar.

Click

DblClick

Ocorre quando o usurio pressiona e solta o boto do mouse


sobre um objeto. Pode tambm ocorrer quando o valor do
controle modificado.
Ocorre quando o usurio d um duplo clique com o mouse.

Ocorre quando uma operao de " arrastar e soltar"


DragDrop completada como resultado do arrastamento sobre um
formulrio ou controle e soltura do boto do mouse.

Ocorre quando uma operao de "arrastar e soltar" est em


progresso. Pode ser utilizado para monitorar se o ponteiro do
DragOver
mouse entra, deixa ou est diretamente sobre um alvo vlido.
O ponteiro do mouse determina que o objeto recebe o evento.

Ocorre quando um objeto recebe a ateno do sistema (focus).


GotFocus Iremos notar que um formulrio recebe a ateno somente
quando todos os controles visveis esto desabilitados.
KeyDown Ocorre quando o usurio pressiona uma tecla.
KeyPress Ocorre quando o usurio pressiona e solta uma tecla.
KeyUp

Ocorre quando o usurio solta a tecla previamente


pressionada.

LostFocus Ocorre quando um objeto perde a ateno do sistema (focus).


MouseDow
Ocorre quando o usurio pressiona o boto do mouse.
n
MouseMove Ocorre quando o usurio movimenta o mouse.
MouseUp

Ocorre quando o usurio solta o boto do mouse previamente


pressionado.

Controles
Todos os controles possuem abreviaes para facilitar a programao. Assim
caso, o programador esteja lendo um artigo ou desenvolvendo um programa que
esteja em um livro (ou outra) fonte) e no exista uma foto ao menos da tela deste
programa, ele facilmente poder identificar os controles existentes dentro deste
programa apenas acompanhando suas abreviaes. Abaixo seguem as
Abreviaes dos Controles bsicos utilizados pelo Visual Basic.

Controles
CheckBox
ComboBox
CommandButton
Data (Control)
DirListBox
DriveListBox
FileListBox
Form
Frame
HScrollBar
Image
Label
Line
ListBox
Ole
OptionButton
PictureBox
Shape
TextBox
Timer
VScrollBar

Abreviaes
CHK
CMB
CMD
DTC
DIR
DRV
FIL
FRM
FRM
SCR
IMG
LBL
LIN
LST
OLE
OPT
PCT
SHP
TXT
TMR
SCR

As Propriedades Principais do CheckBox


Propriedade
s
Alignment
Caption

Aes
Especifica se o texto ficar do lado esquerdo da caixa.
O texto anexado ao objeto checkbox.

Enabled

Habilita ou no este objeto. Estando desabilitado, no aceitar que o usurio


faa evento com a caixa de checagem.

Font

Escolhe uma fonte para o texto digitado no caption.

Name

Nomeia o objeto. A inicial abreviada para este tipo de controle "chk".

Value

Determina o estado do objeto: unchecked, checked ou grayed.

As Propriedades Principais do ComboBox


Propriedade
s

Aes

Style

Escolhe o tipo de caixa de combinao que ser utilizada: dropdown


combo, simple combo, dropdownlist.

Text

Nesta propriedade digita-se um texto que ficar como padro, fixo na rea
de texto, na caixa de combinao. Geralmente deixa-se em branco.

As Propriedades Principais do CommandButton


Propriedades

Aes

Cancel

Se esta opo for ajustada como verdadeira, o boto ser associado


a tecla ESC e sempre que pressionarmos essa tecla, ser como se
tivssemos apertado o boto.

Caption

O ttulo que ser exibido dentro do boto.

Default

Estando o boto com essa propriedade como True, indica que este
boto ser o padro desta janela e sempre que apertarmos a tecla
ENTER, ser como se tivssemos clicado sobre o boto.

Enabled

Determina se o boto ser habilitado para pressionamento por parte


do usurio ou no.

Font
Name
Visible

Escolhe a fonte de letra que o Caption ter.


O nome que daremos para o objeto boto de comando.
Determina se o boto ser visvel para o usurio quando o programa estiver
em execuo.

As Propriedades Principais do Data


Propriedades
Aes
DataBaseNam
Localizao da base de dados a ser utilizada pelo programa.
e
RecordSource

Associa a tabela da base de dados a ser utilizada pelos campos


contidos no formulrio.

As Propriedades Principais do Form


Propriedades
Aes
Apperance Define se o modo de exibio ser 3D ou normal.
BackColor Muda a cor de fundo do formulrio.

BorderStyle

Muda o tipo de borda do formulrio.


None: Sem borda, sem barra de ttulo, sem menu de controle, sem
boto maximizar e sem boto minimizar e no pode redimensionar a
janela.
FixedSingle: Borda Fixa. Aceita o menu de controle, maximizar,
minimizar, barra de ttulo e pode ser redimensionada.
Sizable: Borda comum. Possui o menu de controle, maximizar,
minimizar, barra de ttulo e pode ser redimensionada.
Fixed Dialog: Muito usada para janelas que vo manter um dilogo com
o usurio. Ela pode ter menu de controle e a barra de ttulo, mas no
ter os botes de maximizar e minimizar. No pode ser redimensionada.
Fixed ToolWindow: No possui o menu de controle, o boto maximizar
e o boto minimizar. Tambm no pode ser redimensionada. Aparecer
somente a barra de ttulo e o boto fechar, prprio do windows, esse
tipo de formulrio no aparece na barra de tarefas do windows.
Sizable ToolWindow: No possui o menu controle, o boto maximizar e
o boto minimizar. Pode ser redimensionada. Aparecer somente a
barra de ttulo e o boto fechar, prprio do windows,esse tipo de
formulrio no aparece na barra de tarefas do windows.

Caption

Ser o texto mostrado na barra de ttulo do formulrio (da janela).

ControlBox

Retira ou coloca o menu de controle, boto maximizar, minimizar e


fechar a janela.

Enabled

Se esta opo estiver com False, indica que nenhum objeto desta
janela, e nem a prpria janela, podero responder a eventos gerados
pelo usurio, como clicar do mouse, pressionamento de teclas, etc.

Font

Escolhe a fonte padro que ser usada para todos os objetos inseridos
neste formulrio.

Icon

Nesta propriedade escolhemos um arquivo de cone que ir representar


o programa.

KeyPreview

Determina se os eventos do teclado no formulrio sero executados


antes dos eventos correspondentes aos objetos inseridos no formulrio.

MaxButton

Habilita ou no o boto de maximizao.

MDIChild

Determina se a janela ser uma janela filha. Ou seja, ter uma outra
janela mestra incorporando-a.

MinButton

Habilita ou no o boto de minimizao.

MouseIcon

Sempre que o mouse for movido em cima do formulrio, o cone


associado a esta propriedade aparecer (desde que a propriedade
MousePointer esteja customizada, ou seja, personalizada).

Nesta propriedade especificamos o tipo de ponteiro que o mouse ter


MousePointer quando se mover sobre o formulrio. Os tipos de ponteiro de mouse
esto abaixo da tabela.
Name

Nome definido para o objeto formulrio.

Picture

Insere uma figura em nosso formulrio.

ShowInTaskba Habilita ou no a possibilidade da janela aparecer na barra de tarefas do


windows.
r
Visible

WindowState

Determina se, ao executarmos o programa, essa janela ficar visvel ou


invisvel.
Determina se, ao executarmos o programa, a janela aparecer na tela
do computador normal, maximizada ou minimizada.

Ponteiros do mouse:

0 - (Default) Ponteiro padro;


1 - Ponteiro em forma de seta;
2 - Ponteiro de seleo exata;
3 - Seleo de escrita;
4 - cone (variados);
5 - Seleo de mover objetos;
6 - Redimensionamento na diagonal;
7 - Redimensionamento na vertical;
8 - Redimensionamento na diagonal;
9 - Redimensionamento na horizontal;
10 - Seleo alternada;
11- Sinal de ocupado;
12 - No disponvel (ocupado);
13 - Trabalhando em segundo plano;
14 - Seleo de ajuda;
15 - Todos os tamanhos;
99 - Aparece o cone escolhido na propriedade MouseIcon.

As Propriedades Principais do Frame


Propriedades

Aes

Caption

Coloca um texto no canto superior esquerdo da moldura.

Enabled

Determina se todos os objetos colocados no interior da moldura


estaro disponveis ou no para o usurio.

Name

Nome dado ao objeto. A inicial abreviada "frm". Cuidado para no


colocar um name igual ao de algum form.

As Propriedades Principais do HScrollBar


Propriedades

Aes

Max

Valor mximo a ser utilizado pela barra de


rolagem, geralmente 100.

Min

Valor mnimo a ser utilizado pela barra de


rolagem, geralmente 0.

As Propriedades Principais do Image


Propriedades

Aes

Picture

Figura a ser exibida pelo objeto. Pode ser


qualquer arquivo de imagem suportado pelo
Visual Basic ou at mesmo um arquivo de
cone.

Strech

Possibilita que a imagem seja esticada


mantendo toda a visualizao possvel dentro da
rea do objeto.

As Propriedades Principais do Label


Propriedades
AutoSize

Aes
Com esta propriedade habilitada, indicamos ao controle para
redimensionar automaticamente seu tamanho do texto no label.

BackColor Escolhe a cor de fundo que envolver o label.


BackStyle

Escolhe entre o fundo transparente ou opaco para o label.

BorderStyle Escolhe entre colocar uma moldura envolvendo o label ou no.


Caption

A propriedade principal do label. Determina o texto que ser exibido


dentro do objeto.

Enabled

Habilita ou desabilita o objeto. Quando est em False, a cor de seu


contedo fica acinzentada.

Font
ForeColor

Escolhe a fonte que ter o texto digitado na propriedade caption.


Escolhe a cor da fonte do label.

Name

Nomeia o objeto label. Como j foi dito, importante que todos os


objetos sejam nomeados. A inicial do label "lbl".

Visible

Indica se o objeto ser visvel ou no para o usurio.

Quando o autosize est em True, no possvel expandir o texto


digitado na propriedade caption em outras linhas. Mas, se
WordWrap
passarmos essa propriedade wordwrap para True, isto poder ser
feito, bastando para isto, dimensionarmos o label.

As Propriedades Principais do ListBox


Propriedades

Aes

Columns

Determina a quantidade de colunas que a caixa de listagem ter.

Enabled

Habilita ou no o listbox para o usurio selecionar algum item no


objeto.

IntegralHeight

Determina a possibilidade dos itens dentro da caixa de listagem


serem exibidos de maneira parcial.

ItemData

Nesta propriedade existe uma caixa onde colocamos nmeros


relacionados com os itens existentes dentro do listbox.

List

o local onde digitamos os itens que estaro dentro do listbox.

Quando esta propriedade estiver habilitada, significa que a caixa


MultiSelect de listagem aceitar mltiplas selees, ou seja, poder ser
selecionado mais de um item: none, simple e extended.
Name

Nome que o objeto listbox ter. A abreviao para este objeto


"lst".

Sorted

Classifica os itens existentes dentro do listbox em ordem alfabtica


ou numrica ascendente. Esta propriedade em tempo de execuo
tem a finalidade de informar o estado que se encontra o sorted.

As Propriedades Principais do OptionButton


Propriedades

Aes

Alignment

Determina se o texto ficar do lado direito ou esquerdo do boto de


opo.

Caption

O texto que ser anexado ao objeto.

Enabled

Habilita ou no este objeto. Estando desabilitado, o usurio no


poder selecionar a opo e a cor do texto ser acinzentada.

Name

Nomeia o objeto. A inicial abreviada para este tipo de controle


"opt".

Value

True para opo selecionada e False quando no est selecionada.

As Propriedades Principais do PictureBox


Propriedades

Picture

Aes
Figura a ser exibida pelo objeto. Pode ser
qualquer arquivo de imagem suportado pelo
Visual Basic ou at mesmo um arquivo de
cone.

As Propriedades Principais do TextBox


Propriedades
BackColor

Aes
Escolhe a cor de fundo da caixa de texto. Geralmente branca.

BorderStyle Tipo da borda: Fixa e simples ou sem borda.


Enabled
Font
ForeColor
Locked
MaxLength
MultiLine
Name

Estando em False, o objeto no estar habilitado para interagir


com o usurio.
Escolhe a fonte que ser mostrada dentro da caixa de texto.
Escolhe a cor da fonte.
Estando em False, trava qualquer digitao na caixa de texto.
Quantidade mxima de caracteres dentro da caixa de texto.
Habilita a possibilidade de se digitar mais de uma linha na caixa
de texto.
Nomeia o objeto textbox. A inicial do textbox "txt".

Se durante a digitao de qualquer dado na caixa de texto,


quisermos que o Visual Basic mostre outro caracter no lugar do
PasswordChar
caracter digitado, s especificarmos aqui qual queremos que
seja mostrado. Muito usado para digitao de senhas.
ScrollBars

Estando a propriedade multiline habilitada, interessante


colocarmos uma scrollbar na caixa de texto, pois ela acrescentar
uma barra de rolagem que poder ser: horizontal, vertical, ambas.

Text

A propriedade text a mais importante deste objeto. Todo texto


digitado pelo usurio dentro da caixa de texto incorporado nesta
propriedade.

As Propriedades Principais do Timer


Propriedades
Interval

Aes
Associa o intervalo de tempo em que a
programao contida no objeto ocorrer.

As Propriedades Principais do VScrollBar


Propriedades

Aes

Max

Valor mximo a ser utilizado pela barra de


rolagem, geralmente 100.

Min

Valor mnimo a ser utilizado pela barra de


rolagem, geralmente 0.

CommandButton
Obs:Um boto de comando tipicamente usado para iniciar um evento que
retorna uma ao com fechar um formulrio, movimentao para um registro
diferente, imprimir u relatrio, etc. Use a propriedade Caption para especificar o
texto que aparece no boto de comando. Use a propriedade Picture para
especificar uma figura para um boto de comando, s no esquea de habilitar a
propriedade Style para Graphical, caso contrrio a figura no aparecer.
Voc pode escolher um boto de comando para clic-lo e se a propriedade
Default est selecionada para true (.T.), pelo pressionamento da tecla ENTER o
boto de comando selecionado. Se a propriedade Cancel do boto de comando
est selecionada para true (.T.), voc pode escolher o boto de comando pelo
pressionamento da tecla ESC.

Exerccio Proposto 1
Siga os seguintes passos:

No menu File escolha a opo New Project;

Escolha ento o tipo de projeto Standard Exe.

Feito isto, construa os seguintes botes no formulrio, utilizando-se das


propriedades descritas na tabela abaixo:
Name
Caption
CmdLimpar
Limpar
CmdOk
Ok
CmdCancelar
Cancelar
CmdFechar
Fechar

Na propriedade Name do formulrio digite FrmCommand1 e na propriedade


Caption digite "Exemplo do objeto Command".
O resultado obtido dever ser o formulrio abaixo:

Aps termos construdo a tela, deveremos passar para a parte da programao.


Para gerar a programao, devemos clicar duas vezes no objeto desejado.
Programao do boto Limpar:

Programao do boto Ok:

Programao do boto Cancelar:

Programao do boto Fechar:

Programao para centralizar o Formulrio:

O resultado deste exerccio ser a impresso das mensagens inseridas dentro


dos botes atravs do comando Print diretamente no formulrio, como na figura
abaixo:

Para retirar as mensagens escritas no formulrio, s clicar no boto Limpar e


para encerrar o programa s clicar no boto Fechar. No momento de salvar, o
nome a ser dado ao projeto PrjCommand1.
Exerccio Proposto 2
Siga os seguintes passos:

No menu File escolha a opo New Project;

Escolha ento o tipo de projeto Standard Exe.

Feito isto, reconstrua o exerccio anterior, mas desta vez, utilize as seguintes
propriedades a mais no objeto CommandButton:
Propriedades
Opes
Style
Graphical
Picture
Qualquer arquivo de figura
Modifique tambm a propriedade Caption dos objetos, acrescentando & antes do
nome fsico. Voc estar criando uma tecla de atalho para eles. Assim, quando
voc precisar utilizar o CommandButton, s clicar nele ou manter pressionada a
tecla seguida da letra escolhida para atalho.
Na propriedade Name do formulrio digite FrmCommand2 e na propriedade
Captiondigite "Exemplo do objeto Command".
O resultado obtido dever ser o formulrio abaixo:

No momento de salvar, o nome a ser dado ao projeto PrjCommand2.

Obs: A letra escolhida para ser o atalho do objeto dever possuir & antes e no
necessariamente dever ser a primeira letra, poder ser uma letra do meio ou do
final da palavra.

Label
Labels so usados para exibir texto e no podem ser editados pelo usurio. Eles
so usados para identificar objetos em um formulrio providenciando um
descrio do que um certo controle far se clicado, por exemplo em tempo de
execuo, Eles podem exibir informao em resposta a um evento ou processo
em sua aplicao.
Labels so usados em muitas instncias nas mais diferentes situaes. Muito
comumente, eles so usados com controles que no tem a propriedade Caption.
Por exemplo, voc pode usar o controle label para adicionar descries para
TextBoxes, ListBoxes, ComboBoxes e outros. Eles tambm podem ser usados
para descrever textos em um formulrio, por exemplo, para auxiliar o usurio com
informao de ajuda. Voc pode tambm escrever um cdigo que altere o texto
exibido por um label em resposta eventos em tempo de execuo. Por exemplo,
se sua aplicao leva alguns minutos para processar uma alterao, voc pode
exibir uma barra de status processando uma mensagem atravs de um label.
Obs: Este controle no pode receber foco.

Selecionando a Propriedade Caption do Label


Para alterar o texto exibido em um label, use a propriedade Caption. Em tempo de
projeto, voc pode selecionar esta propriedade, selecionando-a na Janela de
Propriedades. Voc pode utilizar o tamanho da propriedade Caption at o mximo
de 1024 bytes.

Alinhando o Texto
A propriedade Alignment permite que voc selecione o alinhamento do texto do
label para Justificado Esquerda (0, o padro) , Centralizado (1), ou Justificado
Direita (2).

As Propriedades AutoSize e WordWrap


Pelo padro, quando insere-se texto dentro da propriedade Caption excedendo a
largura do controle, o texto desce para a prxima linha e alterado se ele excede
a altura do controle. Para que o controle ajuste automaticamente seu contedo,
selecione a propriedade AutoSize para True. O controle expandir

horizontalmente para receber o contedo da propriedade Caption. Para que o


contedo desa uma linha e expanda verticalmente, selecione a propriedade
WordWrap para True.

Usando Labels para Criar Chaves de Acesso


Selecione a propriedade UseMnemonic para True se voc quiser definir um
caracter na propriedade Caption do label como uma chave de acesso. Quando
voc define uma chave de acesso em um label, o usurio pode pressionar e
utilizar ALT + o caracter que o programador designou para mover o foco para o
prximo controle na ordem da tabulao.
Voc pode tambm criar chaves de acesso para muitos outros controles que
tiverem uma propriedade Caption adicionando o caracter (&) antes da letra que
voc quiser usar como a tecla de acesso. Para um controle receber uma tecla de
acesso sem que ele tenha a propriedade caption, use um label com o controle.
Por que o controle label no pode receber foco, ento o foco se move
automaticamente para o prximo controle na ordem fornecida na propriedade
TabIndex. Use esta tcnica para fornecer teclas de acesso para TextBox,
PictureBox, ComboBox, ListBox, DriveListBox, DirListBox, Grid e Image.

Para Definir uma Chave de Acesso com um Label


1.

Selecione o label primeiro, e ento desenhe o controle.


-ouDesenhe o controle em qualquer ordem e selecione a propriedade
TabIndex do label para numerar o uso do controle.

2. Use o caracter & na propriedade Caption para fornecer uma tecla de


acesso para o label.
Obs: Voc pode querer exibir teclas de acesso em um controle label, se voc
estiver usando eles para criar teclas de acesso. Isto permite que voc una um
controle label um campo de uma linha de registro onde os dados so includos
atravs do &. Para exibir & em um controle label, selecione a propriedade
UseMnemonic para False.

Exerccio Proposto
Siga os seguintes passos:

No menu File escolha a opo New Project;

Escolha ento o tipo de projeto Standard Exe.

Feito isto, construa os seguintes labels no formulrio, utilizando-se das


propriedades descritas na tabela abaixo:
Name
LblNome
LblSexo
LblExame

Caption
Nome do Paciente
Sexo
Exame

Na propriedade Name do formulrio digite FrmLabel e na propriedade Caption


digite "Exemplo do objeto Label".
O resultado obtido dever ser o formulrio abaixo:

No momento de salvar, o nome a ser dado ao projeto PrjLabel.


Com certeza, os objetos criados no ficaram com esta mesma aparncia
apresentada acima. Para isso, algumas propriedades dos labels devero ser
alteradas. Siga as instrues abaixo e confira o resultado:

Objeto
LblNome
LblSexo
LblExame

Propriedades
Font
AutoSize, BorderStyle, Font e
ForeColor
BackColor, Font, ForeColor e
WordWrap

TextBox
Obs: Para exibir mltiplas linhas de texto em um controle TextBox, altere a
propriedade MultiLine para True. Se um TextBox com MultiLine no tem uma
barra de rolagem horizontal, o texto automaticamente ajustado quando o
TextBox redimensionado. Para personalizar a barra de rolagem de um
TextBox, selecione a propriedade ScrollBars.
Barras de rolagem sempre aparecero em um TextBox quando a propriedade
MultiLine dele alterada para True, e a propriedade ScrollBars dele alterada
para qualquer coisa exceto None (0). Se voc alterar a propriedade MultiLine
para True, voc pode usar a propriedade Alignment para alterar o alinhamento
do texto dentro do TextBox. O texto padro justificado esquerda. Se a
propriedade MultiLine False, alterar a propriedade Alignment no
porporcionar efeito.

Exerccio Proposto

Siga os seguintes passos:

No menu File escolha a opo New Project;

Escolha ento o tipo de projeto Standard Exe.

Feito isto, construa os seguintes objetos no formulrio, utilizando-se das


propriedades descritas na tabela abaixo:

Name
LblNomePaciente

Caption
Nome do Paciente

TxtNomePaciente

LblSexo
TxtSexo

Sexo
-

LblExame

Exame

TxtExame
CmdOk

Ok

CmdCancelar

Cancelar

Na propriedade Name do formulrio digite FrmTextBox e na propriedade Caption


digite "Exemplo do objeto TextBox".
O resultado obtido dever ser o formulrio abaixo:

Aps termos construdo a tela, deveremos passar para a parte da programao.


Para gerar a programao, devemos clicar duas vezes no objeto desejado.
Programao da caixa de texto Nome do Paciente:

Programao da caixa de texto Sexo:

Programao da caixa de texto Exame:

Programao do boto Ok:

Programao do boto Cancelar:

Programao para centralizar o Formulrio:

No momento de salvar, o nome a ser dado ao projeto PrjTextBox.

Frame
Frames so usados para criar grupos de controles com identidades. Por exemplo,
voc pode usar um frame para subdividir um formulrio funcionalmente,
separarando grupos de botes de opes (OptionButton).

Figura 1. O controle Frame

Em muitos casos, voc usar o frame passivamamente para agrupar outros


controles e no ter a necessidade de responder por ele nos eventos. Voc ir,
com tudo, alterar o Name, Caption, ou a propriedade Font.

Adicionando um Frame em um Formulrio


Quando usamos um frame para agrupar outros controles, primeiro desenhamos
um frame, e ento desenhamos os controles dentro dele. Isto habilita voc a
movimentar o frame e os controles contidos nele junto.

Desenhando controles dentro do Frame


Para adicionar outros controles no frame, desenhe eles dentro do frame. Se Voc
desenhar um controle do lado de fora do frame, ou usar o mtodo do duplo-clique
para adicionar um controle em um formulrio, e ento tentar movimentar ele para
dentro do frame, o controle ser posto no topo do frame e voc ter que
movimentar o frame e os controles separadamente.

Figura 2. Controles dentro do Frame

Obs: Se voc j tem os controles e quer agrup-los em um frame, voc pode


selecionar todos os controles, recort-los, enviando-os para a rea de
transferncia, selecionar o frame, e ento col-los dentro do frame.

Selecionando mltiplos controles em um Frame


Para selecionar mltiplos controles em um frame, pressione a tecla CTRL
enquanto estiver usando o mouse para desenhar uma caixa em torno dos
controles. Quando voc soltar o mouse, os controles dentro do frame sero
selecionados, como na Figura 3.

Figura 3. Selecionando controles dentro de um Frame

Check Box
O controle checkbox exibe uma marca de checagem quando ele selecionado.
Ele comumente utilizado para presenciar uma seleo Sim/No ou
Verdadeiro/Falso para o usurio. voc pode utilizar este controle em grupos para
exibir mltiplas escolhas das quais o usurio pode selecionar uma ou mais.
Este controle similar ao controle optionbutton, mas neste cada opo usada
para indicar uma seleo que feita pelo usurio. Eles diferem somente porque
um optionbutton em um grupo pode ser selecionado por vez. Com o controle
check box, porm, qualquer nmero de caixas de checagem pode ser
selecionado.

O Valor da Propriedade
A propriedade Value do check box indica se o check box est checado, nochecado ou no acessvel. Quando selecionado, o valor ser 1. Por exemplo:

Tabela de valores e constantes do Visual Basic equivalentes que so usadas para


selecionar a propriedade Value.
Opo
No-Checado
Checado
No-Acessvel

Valor
0
1
2

Constante
VbUnchecked
VbChecked
VbGrayed

O usurio clica no controle check box para indicar um estado checado ou nochecado. Voc pode ento testar o estado do controle e programar sua aplicao
para desenvolver alguma ao baseada nesta informao.
Por padro, o check box selecionado para vbUnchecked. Se voc quer
preselecionar um check box de uma srie de check boxes, voc pode selecion-lo
atravs da propriedade Value para vbChecked na rotina Form_Load ou
Form_Initialize.
Voc pode tambm selecionar a propriedade Value para vbGrayed para
desabilitar o check box. Por exemplo, pode pode querer desabilitar um check box
at que uma certa condio seja acionada.

O Evento Click
Porm se o usurio clica no check box, o evento Click acionado. Voc pode
ento programar sua aplicao para desenvolver alguma ao dependendo do
estado do check box. Como no exemplo, a propriedade caption do controle check
muda cada vez que o controle clicado, indicando um estado checado ou nochecado.
Private Sub Check1_Click()
If Check1.Value = vbChecked Then
Check1.Caption = "Checked"
ElseIf Check1.Value = vbUnchecked Then
Check1.Caption = "Unchecked"
End If
End Sub
Obs: Se o usurio clicar duas vezes no controle check box, cada clique ser
processado separadamente, porque o controle check box no suporta o evento
double-click.

Respondendo pelo Mouse e pelo teclado


O evento click do check box tambm acionado quando o foco passado para o
controle com o teclado usando a tecla TAB e ento pressionando a tecla de
espao.
Voc pode selecionar o check box atravs do caracter que cria tecla de atalho (&).
Por exemplo:

Neste exemplo, pressionando a combinao de teclas ALT+C voc pode alternar


entre os estados checado e no-checado.

Exerccio Proposto
Siga os seguintes passos:

No menu File escolha a opo New Project;

Escolha ento o tipo de projeto Standard Exe.

Feito isto, construa os seguintes objetos no formulrio, utilizando-se das


propriedades descritas na tabela abaixo:

Name
FrmOpcoes
ChkArroz
ChkFeijao
ChkFritas
ChkOvo
ChkBife
CmdFechar

Caption
Arroz
Feijo
Fritas
Ovo
Bife
&Fechar

Na propriedade Name do formulrio digite FrmFrameCheckBox e na propriedade


Caption digite "Exemplo do objetos Frame e CheckBox".
O resultado obtido dever ser o formulrio abaixo:

No momento de salvar, o nome a ser dado ao projeto PrjCheckBox.

OptionButton
Usualmente, os controles OptionButton so usados em um grupo de opes
para exibir opes das quais o usurio seleciona somente uma. Voc agrupa os
controles OptionButton desenhando-os dentro de uma controle que os contm
como um Frame, um PictureBox, ou um formulrio. Para agrupar os controles
OptionButton em um Frame ou PictureBox, desenhe o Frame ou o PictureBox
primeiro, e ento desenhe os controles OptionButton dentro. Todos os controles
OptionButton com the same container act as a single group.

Enquanto o controle OptionButton e o controle CheckBox parecem funcionar


similarmente, h uma importante diferena: Quando um usurio seleciona um
OptionButton, o outro controle OptionButton do mesmo grupo est
automaticamente no disponvel. Em contraste, qualquer nmero de controles
CheckBox poder ser selecionado.

Exerccio Proposto
Siga os seguintes passos:

No menu File escolha a opo New Project;

Escolha ento o tipo de projeto Standard Exe.

Feito isto, construa os seguintes objetos no formulrio, utilizando-se das


propriedades descritas na tabela abaixo:
Name
FrmSexo
OptMasculino
OptFeminino
FrmEstado
OptSolteiro
OptCasado
OptViuvo
OptSeparado
OptDivorciado
CmdFechar

Caption
Sexo
Masculino
Feminino
Estado Civil
Solteiro
Casado
Vivo
Separado
Divorciado
&Fechar

Na propriedade Name do formulrio digite FrmOptionButton e na propriedade


Caption digite "Exemplo do objeto OptionButton".
O resultado obtido dever ser o formulrio abaixo:

No momento de salvar, o nome a ser dado ao projeto PrjOption.

ListBox
Um ListBox exibe uma lista de tens da qual o usurio pode selecionar um ou
mais tens. Se o number de tens excede o nmero que pode ser exibido, uma
barra de rolagem automaticamente adicionada para o ListBox.
Se no h item selecionado, o valor da propriedade ListIndex -1. O primeiro
item da lista ListIndex 0, e o valor da propriedade ListCount sempre um valor
maior do que o contido em ListIndex.
Obs: Para adicionar ou deletar tens em um ListBox, use o mtodo AddItem ou
RemoveItem. Marque as propriedades List, ListCount, e ListIndex para habilitar
um usurio para acessar tens no ListBox. Alternativamente, voc pode adicionar
tens para a lista usando a propriedade List em tempo de projeto.

Exerccio Proposto 1
Siga os seguintes passos:

No menu File escolha a opo New Project;

Escolha ento o tipo de projeto Standard Exe.

Feito isto, construa os seguintes objetos no formulrio, utilizando-se das


propriedades descritas na tabela abaixo:
Name
List - Caption
LstNomes
Maria da Silva
Jos Pereira
Cornlios Silva
Pedro Pereira
Peter Norton Souza
Bill Gates Silva
CmdFechar
&Fechar
Na propriedade Name do formulrio digite FrmListBox1 e na propriedade
Caption digite "Exemplo do objeto ListBox".
O resultado obtido dever ser o formulrio abaixo:

No momento de salvar, o nome a ser dado ao projeto PrjListBox1.

Exerccio Proposto 2
Siga os seguintes passos:

No menu File escolha a opo New Project;

Escolha ento o tipo de projeto Standard Exe.

Feito isto, construa os seguintes objetos no formulrio, utilizando-se das


propriedades descritas na tabela abaixo:

Name
LstNomes
LblTexto
LblQuantidade
LblIndice
CmdTexto
CmdQuantidade
CmdIndice
CmdFechar

List - Caption
Joaquim Portugal
Jos Pereira
Pedro Pereira
Peter Norton Souza
Cornlios Silva
Bill Gates Silva
&Texto
&Quantidade
&Indice
&Fechar

Na propriedade Name do formulrio digite FrmListBox2 e na propriedade


Caption digite "Exemplo do objeto ListBox".
O resultado obtido dever ser o formulrio abaixo:

Aps termos construdo a tela, deveremos passar para a parte da programao.


Para gerar a programao, devemos clicar duas vezes no objeto desejado.
Programao para o Formulrio:

Programao do boto CmdTexto:

Programao do boto CmdQuantidade:

Programao do boto CmdIndice:

O programa ser executado da seguinte maneira:

No momento de salvar, o nome a ser dado ao projeto PrjListBox2.

ComboBox
O ComboBox um controle, similar a uma combinao entre um ListBox e um
TextBox, em que voc entra com um valor ou seleciona um item de uma lista.

Exerccio Proposto
Siga os seguintes passos:

No menu File escolha a opo New Project;

Escolha ento o tipo de projeto Standard Exe.

Feito isto, construa os seguintes objetos no formulrio, utilizando-se das


propriedades descritas na tabela abaixo:
Name
Caption
CmbNomes
LblNomes
CmdFechar
&Fechar
Na propriedade Name do formulrio digite FrmComboBox e na propriedade
Caption digite "Exemplo do objeto ComboBox".
O resultado obtido dever ser o formulrio abaixo:

Aps termos construdo a tela, deveremos passar para a parte da programao.


Para gerar a programao, devemos clicar duas vezes no objeto desejado.
Programao para o Formulrio:

Programao da caixa combo CmbNomes:

O programa ser executado da seguinte maneira:

No momento de salvar, o nome a ser dado ao projeto PrjComboBox.

ScrollBar
Com as barras de rolagem, voc pode utilizar as setas que esto posicionadas
nas extremidades para aumentar ou diminuir valores, tamanho de objetos,
controlar o posionamento e o direcionamento de objetos baseado em outros
fatores contidos no programa.
Este objeto possui duas aparncias, disponibilizando ao programador uma barra
na posio horizontal ou uma barra na posio vertical. Dependendo da situao
do programa, o programador saber qual das barras ele precisar em seu
programa.

Timer
O controle Timer realiza aes atribudas ele de acordo com a passagem do
tempo. Eles so independentes do usurio, e voc pode program-los para ter
aes em intervalos de tempo regulares. Uma tpica ao realizada com ele a
checagem do relgio do sistema para visualizar as horas em alguma barra de
tarefas. Timers tambm so muito usados para outros tipos de processamento.
Cada controle timer tem uma propriedade chamada Interval que especifica o
nmero de milisegundos que passam entre um evento de tempo para o prximo.
Mesmo desabilitado, um timer continua a receber um evento (apropriadamente
nomeado de evento Timer) em um estado inacabado igual ao intervalo de tempo.
A propriedade Interval tem poucas limitaes para considerar quando voc est
programando em um controle timer:

Se sua aplicao ou outra aplicao feita exigindo uma demanda maior


do sistema tal como longos retornos, clculos intensivos, ou leitura de
drives, redes, ou portas de acesso sua aplicao no permite rodar no
evento timer com frequncia como especificado na propriedade Interval.

O intervalo poder ser entre 0 e 64.767, o que significa que um intervalo


muito longo no poder ser mais longo do que um minuto (cerca de 64.8
segundos).

O intervalo no garantido exatamente com o decorrer do tempo. Para


assegurar exatido, o timer exibe a checagem do relgio do sistema
quando necessrio, melhor do que tentar incrementar valores acumulados
internamente como se fosse tempo.

Todo controle timer dever ser associado com um form. Contudo, para criar uma
aplicao com tempo, voc dever criar no mnimo um form.

Inicializando um Controle Timer


Um controle timer tem duas propriedades fundamentais:
Propriedade
Opo

Enabled

Se voc quiser que o controle timer inicie trabalhando, como o


evento load do form, altere esta propriedade para True. Em todo
caso, deixe esta propriedade selecionada como False. Voc
poder escolher ter um evento externo (como um clique de um
boto de comando por exemplo) para iniciar a operao do timer.

Interval

Nmero de milisegundos entre os eventos do timer.

Note que a propriedade Enabled do controle timer diferente da propriedade


Enabled dos outros objetos. Na maioria dos objetos, a propriedade Enabled
determina qual objeto pode responder por um evento causado pelo usurio. Com
o controle Timer, alterando a propriedade Enabled para False suspendemos as
operaes do timer.
Obs: Lembre-se que o evento Timer peridico. A propriedade Interval no
determina "quanto tempo" e sim "qual a frequncia". O tamanho do intervalo
depende de quanta preciso voc vai precisar, porque, existe a chance em
potencial de que algum erro ocorra fazendo um intervalo quebrado, mesmo assim
voc ter mais preciso.

DriveListBox
Um DriveListBox habilita um usurio selecionar uma unidade de disco vlida.
Use este controle para exibir uma lista de todas as unidades de disco vlidas no
sistema do usurio. voc pode criar caixas de dilogo que habilitam o usurio abrir
um arquivo de uma lista de arquivos em um disco em qualquer drive acessvel.
Obs:Selecione as propriedades List, ListCount e ListIndex para habilitar um
usurio acessar tens em uma lista. Se voc tambm exibir os controles
DirListBox e FileListBox, voc pode escrever um cdigo para sincroniz-los com
o DriveListBox e com cada outro controle.
Exerccio Proposto
Siga os seguintes passos:

No menu File escolha a opo New Project;

Escolha ento o tipo de projeto Standard Exe.

Feito isto, construa os seguintes labels no formulrio, utilizando-se das


propriedades descritas na tabela abaixo:
Name

Drive1
Dir1
File1
Na propriedade Name do formulrio digite FrmArquivos e na propriedade
Caption digite "Exemplo dos Objetos de Arquivos".
O resultado obtido dever ser o formulrio abaixo:

Aps termos construdo a tela, deveremos passar para a parte da programao.


Para gerar a programao, devemos clicar duas vezes no objeto desejado.
Programao da caixa de listagem de drive Drive1:

Programao da caixa de listagem de diretrios Dir1:

No momento de salvar, o nome a ser dado ao projeto PrjArquivos.

DirListBox
Obs: Selecione as propriedades List, ListCount e ListIndex para habilitar um
usurio acessar tens em uma lista. Se voc tambm exibe os controles
DriveListBox e FileListBox, voc pode escrever cdigo para sincroniz-los com
o controle DirListBox e com cada outro controle.

Exerccio Proposto
O exerccio proposto para este objeto j foi realizado no item DriveListBox.

FileListBox
Obs: Selecione as propriedades List, ListCount e ListIndex para habilitar um
usurio acessar tens na lista. Se voc tambm exibe os controles DirListBox e
DriveListBox, voc pode escrever cdigo para sincroniz-los com o FileListBox
e com cada outro controle.

Exerccio Proposto
O exerccio proposto para este objeto j foi realizado no item DriveListBox.

Shape
O controle shape usado para criar formas geomtricas pr-definidas em forms,
frames, oo picture boxes. Essas formas pr-definidas podem ser: retngulo,
quadrado, oval, crculo, retngulo com cantos arredondados ou um quadrado com
cantos arredondados.
Figura 1. O controle Shape
Voc pode alterar neste controle as propriedades style, color, fill style, border color
e border style de qualquer um dos shapes que voc desenhou no form.
Para uso simples, o controle shape permite que voc crie uma variedade de
shapes sem escrever qualquer cdigo. Para uma funcionalidade mais avanada
voc precisa usar os comandos Line e Circle.

Shapes Pr-Definidos
A propriedade Shape do controle shape permite que voc trabalhe com seis tipos
pr-definidos de shapes. A tabela abaixo lista todos os shapes pr-definidos, seus
valores e as contantes equivalentes do Visual Basic:

Shape
Rectangle
Square
Oval
Circle
Rounded Rectangle
Rounded Square

Style
0
1
2
3
4
5

Constant
vbShapeRectangle
vbShapeSquare
vbShapeOval
vbShapeCircle
vbShapeRoundedRectangle
vbShapeRoundedSquare

Figura 2. Shapes Pr-defindos

Preenchimento e Estilos de Linhas


Voc pode usar as propriedades FillStyle e BorderStyle para alterar o estilo do
preenchimeto e o estilo da borda de qualquer um dos shapes que voc desenhou
no form.
A propriedade FillStyle, controla o estilo e permite que voc atravs de um nmero
pr-definido controle o padro do estilo de preenchimento. Esto includos: Solid,
Transparent, Horizontal Line, Vertical Line, Upward Diagonal, Downward Diagonal,
Cross e Diagonal Cross.
A propriedade BorderStyle permite que voc atravs de um nmero pr-definido
controle o estilo da borda. Esto includos: Transparent, Solid, Dash, Dot, DashDot, Dash-Dot-Dot e Inside Solid.

Alterando os Atributos de Cor


As propriedades BackColor e FillColor permite que voc adicione cores no shape
e em suas bordas.
Em tempo de projeto, voc pode alterar fillcolor ou bordercolor escolhendo na
janela de propriedades do controle shape as cores correspondentes paleta de
cores ou cores do sistema.
Para alterar as cores em tempo de execuo, use as constantes de cores do
Visual Basic (vbGreen, por exemplo) ou as constantes das cores do sistema
(vbWindowBackground, por exemplo) ou a funo RGB para especificar a fillcolor.

Desenhando Shapes em um Form


Voc pode usar o controle shape para desenhar retngulos (regulares ou de
cantos arredondados), quadrados (regulares ou de cantos arredondados), ovals, e
crculos em um form.
Para desenhar um shape em um form:

1. Na caixa de ferramentas, selecione o controle Shape.Quando o ponteiro


mover-se para dentro do form, alterando-se para uma cruz;
2. Clique e arraste o cursor para fazer o tamanho do objeto como voc quiser;
3. Na janela de Propriedades, selecione a propriedade Shape;
4.

Selecione o estilo que voc quer.

Os shapes podem ser aumentados como qualquer outro controle, selecionando e


arrastando o controle redimensionado-o, ou selecionando as propriedades Height
e Width.

Line
O controle line usado para criar simples segmentos de linha em um form, um
frame, ou em um picture box.
Figura 1. O controle line

Voc pode controlar a posio, tamanho, cor e estilo dos controles line para
personalizar o visual das aplicaes. O line tem funcionalidade limitada e est
intensionado para usos simple de exibio e impresso. Os segmentos de linha
no podem ser unidos com outras formas geomtricas.

Selecionando o Estilo da Borda e Cor


Voc pode selecionar a cor e o estilo de um segmento de linha usando as
propriedades BorderStyle e BorderColor.
A propriedade BorderStyle possui seis estilos de linhas:

Transparent

Solid

Dash

Dot

Dash-Dot

Dash-Dot-Dot

Inside Solid

Voc pode especificar um estilo de linha em tempo de projeto escolhendo a


propriedade BorderStyle na janela de propriedades do controle line, ou em tempo
de execuo especificando o estilo usando as constantes equivalentes do Visual
Basic no cdigo.
A propriedade BackColor usada para especificar a cor da linha.
Em tempo de projeto, voc pode selecionar a cor da linha escolhendo a
propriedade BorderColor na janela de propriedades do controle line e ento
selecionando as cores disponveis na paleta ou cores do sistema.
Para alterar uma cor em tempo de execuo, use as constantes de cores do
Visual Basic (vbGreen, por exemplo) ou as constantes de cores do sistema

(vbWindowBackground, por exemplo) ou a funo RGB para especificar as cores


da borda.

Movendo e Aumentando uma Linha


Voc pode mover ou redimensionar o controle line em tempo de execuo
alterando as propriedades X1, X2, Y1 e Y2. As propriedades X1 e Y1 controlam as
posies horizontal e vertical da esquerda do incio ao fim de um segmento de
linha. As propriedades X2 e Y2 controlam as posies horizontal e vertical da
direita do incio ao fim de um segmento de linha. Voc no pode mover uma
segmento de linha usando o mtodo Move.

Desenhando Linhas em um Form


Voc pode usar o line para desenhar linhas simples em um form.

Para desenhar uma linha em um form


1. Na caixa de ferramentas, selecione o controle Line.Quando o ponteiro
mover-se para dentro do form, alterando-se para uma cruz;
2. Clique no form onde voc quer a linha para iniciar e pressione o boto do
mouse;
3. Arraste o cursor para onde voc quer o final da linha e solte o boto do
mouse;
4. Na janela de Propriedades, selecione a propriedade BorderStyle se voc
quer alterar a aparncia da linha;
5. Selecione o estilo que voc quer.

Image
Um Image pode exibir um grfico de um arquivo bitmap. Um bitmap define uma
imagem como uma coleo de pontos (pixels). Um bitmap tem as extenses de
seus arquivos como: .bmp, .dib, ou .2bp. Voc pode usar bitmaps de vrias
definies de cores, incluindo 2, 4, 8, 16, 24, e 32-bits, mas um bitmap somente
exibir corretamente se o dispositivo de exibio suporta a definio de cores
usadas pelo bitmap. Por exemplo, um bitmap de resoluo 8-bit-por-pixel (256
cores) somente exibe em 16 cores quando exibido em um dispositivo 4-bits-porpixel (16 cores).

O image usa menos recursos do sistema e remonta as figuras mais rpido do que
um picture box, mas ele s suporta parte das propriedades de um picture box,
eventos e methods. Ambos os controles suportam formatos de figuras bitmap.
Contudo, voc pode esticar as figuras em um controle image ajustando elas ao
tamanho do controle. Voc no pode fazer isto com o controle picture box. A
propriedade Stretch determina o quanto a figura ser esticada quando o controle
image redimensionado. Se a opo True, a figura lida dentro do controle

image esticada. Esticando uma figura bitmap podemos produzir uma imagem de
menor qualidade.

PictureBox
Obs: Voc pode tambm usar um PictureBox para agrupar controles
OptionButton e para exibir mtodos de sada de grficos e escrever textos com o
mtodo Print. Para fazer um PictureBox automaticamente redimensione para
exibir uma entrada de grfico, alterando a propriedade AutoSize para True.
Para criar uma animao ou simulao, voc pode manipular as propriedades
grficas e os mtodos atravs de cdigo. As propriedades grficas e os eventos
so muito usados por operaes no momento de impresso, assim como
modificar o formato de um formulrio na tela para impresso.

ADO Data Control


O controle ADO Data Control similar ao intrinsco Data control e ao Remote
Data Control (RDC). O ADO Data Control allows you to quickly create a
connection to a database using Microsoft ActiveX Data Objects (ADO).
Obs: Em tempo de projeto, voc pode criar uma coneco selecionando a
propriedade ConnectionString para um coneco com textos vlida, ento
selecione a propriedade RecordSource para uma condio apropriada no
gerenciador de base de dados.

Voc pode tambm selecionar a propriedade ConnectionString para definir o


nome de um arquivo em uma coneco; o arquivo gerenciado por uma caixa de
dilogo de Link de Dados, que aparece quando voc clica na propriedade
ConnectionString e ento clica nas opes Build ou Select.
Podero ser feitas coneces com os objetos: DataGrid, DataCombo, oo
DataList apenas selecionando a propriedade DataSource do Controle ADO Data.
Em tempo de execuo, voc pode dinamicamente alterar as propriedades
ConnectionString e RecordSource para alterar a base de dados.
Alternativamente, voc pode selecionar a propriedade Recordset diretamente
para posteriormente abrir a origem dos registros.

Ole (Object Linking and Embending)


Ole uma tecnologia que complementa e estende o intercmbio dinmico de
dados, j que, em vez de a informao ser meramente transferida, ela
apresentada da mesma forma em que aparecer no aplicativo original. Planilhas
aparecem como planilhas, documentos em processadores de texto aparecem
como deveriam aparecer em um processador de texto e assim por diante. Quando
voc acrescenta um controle OLE a seu projeto em Visual Basic, fornece ao
usurio uma ponte para outros aplicativos Windows e o que eles vero ser, para
eles, semelhante ao outro aplicativo.

A idia por trs do conceito de incorporar que voc crie documentos que
integrem vrios aplicativos Windows sob um mesmo teto. Incorporao em OLE
permite ao controle personalizado manter o dado do objeto dentro dele prprio.
Quando o Visual Basic ativa o controle OLE, ele, o controle, retorna para o
aplicativo que criou o dado, e voc pode utilizar o potencial daquele aplicativo
para modificar o dado no local.
Uma das idias principais que sustentam a introduo da OLE foi que a Microsoft
queria que os usurios deixassem de pensar em seus aplicativos como um deus
supremo, e em vez disso, pensassem nele como um documento central.

Variveis
O que so Variveis ?
Toda linguagem de programao precisa de algum lugar para armazenar o
resultado de seus clculos ou simplesmente para controlar o fluxo do programa.
Assim como acontece na lgebracotidiana, as linguagens de programao se
valem de variveis para armazenar dados na memria do computador.Uma
varivel de memria nada mais do que uma posio da memria do computador
reservada exclusivamente para que sejam guardadas informaes e dados. A
essa posio de memria damos um nome para referncia dentro do nosso
programa, como por exemplo, NomeCliente. Quem controla qual posio de
memria do computador ser reservada a prpria linguagem e o sistema
operacional, ou seja, devemos apenas nos preocupar em nomear e declarar as
variveis. E j que estamos falando de variveis, quando formos nome-las,
deveremos seguir algumas regras bsicas:

O nome precisa iniciar com uma letra.

Somente so permitidas letras, nmeros e o caractere de sublinhado.


Qualquer sinal de pontuao e espao em branco ser invlido.

No Visual Basic 6.0, os nomes podem ter at 255 caracteres de


comprimento. Isso significa que podemos ter nomes de variveis bem
descritivos, como por exemplo, PrimeiroNomeDoCliente.

No podem coincidir com uma palavra reservada do Visual Basic, como


nomes de funes ou procedimentos.

Precisam ser nicos dentro do escopo atual, ou seja, no podemos ter


duas variveis com o mesmo nome dentro de uma rotina, porm, entre
rotinas diferentes, isso perfeitamente possvel.

Escolha nomes sugestivos para as variveis, de tal forma que descrevam sua
funo ou contedo que ser armazenado nelas. Por exemplo, para uma varivel
onde seria armazenado o resultado do clculo do salrio de um funcionrio,
poderamos escrever nSalarioFunc, em vez de X, Y ou Z.
Acostume-se a iniciar o nome de uma varivel com uma combinao de at trs
letras em minsculo que identifica o seu tipo de dado. Por exemplo, para uma

varivel do tipo string, utilize a combinao "str", para uma varivel numrica
inteira utilize "int", e assim por diante. Veja os seguintes exemplos:
strNomePrograma = "Controle de Despesas Domsticas"
lngSaldoInicial = 125080

Declarao de Variveis
Embora voc possa ir criando variveis a medida que for precisando,
aconselhvel que declare todas as variveis que ir utilizar em seu programa. Isso
torna o programa mais estruturado e menos propenso a erros, como por exemplo,
ocorrncias de alteraes indevidas do valor de uma varivel entre chamadas de
rotinas. Quando declaramos uma varivel, um escopo atribudo a ela, ou seja,
determinada sua abrangncia (visibilidade) e tempo de vida (existncia). No Visual
Basic 6.0, utilizamos o comando de declarao Dim para declararmos uma
varivel, dando-lhe assim um nome e definindo o seu tipo de dado e escopo.
A sintaxe completa :
Dim NomeVarivel [ As TipoDado ]
NomeVarivel representa um nome vlido para variveis. J a clusula opcional
As permite que seja definido o tipo de dado que a varivel armazenar. Os tipos
de dados disponveis sero vistos mais frente. Voc pode deixar para o Visual
Basic declarar implicitamente as variveis. Assim voc simplesmente cria as
variveis medida que for precisando. Por exemplo, suponhamos que voc tenha
a seguinte funo que calcula a mdia entre dois nmeros:
Function Media ( PrimeiroNumero , SegundoNumero )
intSoma = PrimeiroNumero + SegundoNumero
Media = intSoma / 2
End Function
Neste caso, a varivel Soma no fora declarada. Agora imagine que por questo
de descuido, voc tenha digitado o seguinte:
Function Media ( PrimeiroNumero , SegundoNumero )
intSomar = PrimeiroNumero + SegundoNumero
Media = intSoma / 2
End Function
A funo no seria executada, uma vez que est tentando utilizar uma varivel, no
caso intSoma, que no possui qualquer valor, j que o mesmo fora atribudo
varivel intSomar. Para evitar esse tipo de problema (apenas um entre vrios
possveis), aconselhvel declarar-se todas as variveis que sero utilizadas pela
rotina (procedimento ou funo). Portanto, o correto seria escrever a funo da
seguinte forma:
Function Media ( PrimeiroNumero , SegundoNumero )
Dim intSoma
intSoma = PrimeiroNumero + SegundoNumero
Media = intSoma / 2
End Function
Voc pode forar o Visual Basic a verificar se todas as variveis foram declaradas
previamente e, em caso negativo, apresentar uma mensagem de advertncia.
Isso possvel atravs da incluso do comando Option Explicit na seo
Declarations da classe, formulrioou mdulo. Podemos tambm selecionar a
opo Options, do menu Tools, e ativar a caixa de seleo Require Variable

Declaration, na pgina Editor. Isso far com que em todo mdulo novo, porm
no em mdulos existentes, seja includo o comando Option Explicit.

Abrangncia e Tempo de Vida de uma Varivel


Dois termos muito utilizados na programao so abrangncia e tempo de vida
das variveis. Esses termos definem o limite da visibilidade de uma varivel e o
tempo em que ela poder reter seu valor. A isso chamamos de escopo.
Abrangncia refere-se (s) parte(s) do cdigo do programa onde uma
determinada varivel visvel, ou seja, onde ela pode ser acessada. Isso significa
que podemos ter variveis cujos valores somente podero ser acessados e/ou
alterados pelo procedimento/funo que as declarou e em nenhuma outra parte
do programa. Isso evita que outras rotinas do programa possam alterar
inadvertidamente os valores dessas variveis. Essas variveis so ditas locais
rotina. Para declarar uma varivel local rotina, seja ela um procedimento (Sub)
ou funo (Function), utilize o comando de declarao Dim ou Staticdentro da
mema, como no fragmento de cdigo a seguir:
Function CalculaSaldo ( dSaldoAntes , dSaldoDebito )
Dim dblNovoSaldo as Double
End Function
Podemos ter tambm variveis que so visveis apenas pelas rotinas existentes
num mdulo e no pelas rotinas de outros mdulos da aplicao. Essas variveis
possuem escopo local ao mdulo inteiro. Voc declara variveis locais a nvel de
mdulo atravs dos comandos de declarao Dim ou Private, colocados na
seo Declarations do mdulo.
Veja o seguinte exemplo:
Private strSenhaas String
Para tornar uma varivel disponvel a todos os mdulos e a todas as rotinas, voc
dever declar-la na seo Declarations de qualquer um dos mdulos com o
comando Public, como mostra o exemplo:
Public strSenhaas String
A esse tipo chamamos de varivel de escopo global, ou seja, qualquer rotina de
qualquer mdulo tem acesso a ela. O tempo de vida de uma varivel diz respeito
ao tempo em que ela poder reter seu valor entre as diversas chamadas do
procedimento/funo. Quando uma varivel declarada e a ela atribudo um
valor, esse valor se perde quando a rotina encerra sua execuo. Em outras
palavras, a varivel criada quando se entra na rotina e destruda quando se sai
da mesma. H, porm, situaes onde devemos manter o valor da varivel entre
as chamadas. Suponhamos por exemplo, que voc esteja programando um
pequeno jogo e que tenha criado uma rotina para controle dos pontos
acumulados. Voc precisar de uma maneira de preservar os pontos j marcados
entre as chamdas da rotina. Desse modo, a varivel, embora no seja global, no
perde seu valor aps o retorno da rotina ao cdigo que a invocou. A esse tipo,
damos o nome de varivel esttica.
Para declarar uma varivel esttica, utilize o comando de declarao Static,
conforme mostrado no exemplo:
Function Pontos ( intMarcados )
Static lngPontosAcumulados as Long
lngPontosAcumulados = lngPontosAcumulados + intMarcados
Pontos = lngPontosAcumulados
End Function

Se voc precisar, por um motivo ou outro, declarar todas as variveis de uma


rotina como sendo estticas, coloque a palavra reservada Static frente do nome
do procedimento/funo, da seguinte forma:
Static Function Pontos ( intMarcados )
Dim lngPontosAcumulados as Long
lngPontosAcumulados = lngPontosAcumulados + intMarcados
Pontos = lngPontosAcumulados
End Function
Devemos lembrar que voc dever utilizar variveis com o escopo mais local
possvel, para assim evitar conflitos de nomes de variveis e alteraes de valores
indesejveis.

Tipos de Variveis
Como toda linguagem de programao, o Visual Basic tambm possui vrios tipos
de dados aplicveis s variveis, que definem quais os valores que essas podero
armazenar. O Visual Basic 6.0 define 11 tipos de dados bsicos, cada qual com
suas caractersticas peculiares, como largura da faixa de dados, tamanho em
bytes, etc. A tabela a seguir, relaciona todos esses tipos:
Tipo de
Dado
Integer
Long
Single

Tamanho em Bytes

Faixa de Valores

2 bytes
4 bytes
4 bytes

-32.768 32.767
-2.147.483.648 2.147.483.647
-3,402823E38 1,401298E-45 (-) e 1,401298E-45 3,402823E38 (+)
-1,79769313486232E308 -4,94065645841247E-324 (-) e
4,94065645841247E-324 1,79769313486232E308 (+)
-922.337.203.685.477,5808 922.337.203.685.477,5807
De zero 65.500 caracteres. Em sistemas de 32 bits, mximo de
2E32 caracteres.
0 255
True (verdadeiro) ou False (falso)
De 1 de Janeiro de 100 31 de Dezembro de 9999
Qualquer referncia a objeto

Double

8 bytes

Currency

8 bytes

String

1 byte por caracter

Byte
Boolean
Date
Object

1 byte
2 bytes
8 bytes
4 bytes
16 bytes + 1 byte para
cada caracter

Variant

Qualquer valor numrico, caracter, objeto ou valor nulo.

Os tipos de dados determinam o que voc pode armazenar numa varivel. Por
exemplo, voc no pode entrar com uma expresso caractere numa varivel do
tipo numrico, nem digitar um nmero numa varivel lgica. Vejamos os detalhes
dos tipos de dados mais comumente utilizados.

Tipos Integer e Long


Esses dois tipos de dados permitem o armazenamento de valores numricos
inteiros, com os quais podemos efetuar clculos e operaes matemticas.
A faixa de valores permitida para o tipo Integer vai de -32.768 32.767, sendo
portanto limitada para alguns tipos de operaes. Variveis desse tipo so muito
teis como contadores de loops For...Next, por serem de manipulao muito
rpida pelo processador, pois necessitam de poucas instrues de mquina.
O tipo Long, por outro lado, abrange uma faixa muito maior de valores, da ordem
de 2 milhes, conforme pode ser constatado na tabela anterior.

Tipos Single e Double


Single e Double tambm so tipos de dados numricos, porm permitem a
manipulao de valores decimais, como pesos, unidades de medidas, etc. Como
os tipos anteriores, podemos efetuar qualquer operao matemtica com eles.
O que diferencia o tipo Single do tipo Double a preciso nas casas decimais e
a faiza de valores abrnagida por cada um. Veja a tabela anterior para
comparao. Variveis do tipo Single so ditas de preciso simples, comumente
chamadas apenas de variveis de ponto-flutuante. Variveis do tipo Double so
denominadas variveis de dupla preciso.

Tipo Currency
O Visual Basic possui um tipo de dado especial para tratamento de valores
monetrios, evitando-se assim erros de arredondamento durante clculos
matemticos. Esse tipo de dado chamado de Currency. Deve-se utiliz-lo
apenas para armazenamento de valores monetrios. Se num determinado
clculo, o valor resultante tiver mais de quatro casas decimais, as casas decimais
extras (a partir da quinta casa) sero truncadas. Assim, o nmero 5402,105782
por exemplo, ser armazenado como 5402,1057 numa varivel do tipo Currency.

Tipo String
O tipo de dado String certamente o mais utilizado. Ele possibilita que uma
sequncia de caracteres seja armazenada numa varivel. Essa sequncia de
caracteres pode conter desde letras do alfabeto at smbolos grficos e nmeros,
muito embora no possamos efetuar clculos com os nmeros armazenados
numa sequncia. Devemos envolver a cadeia de caracteres com aspas (").
Com variveis do tipo caractere, possvel efetuarmos algumas operaes de
comparao, concatenao (juno) de duas ou mais sequncias de caracteres
ou extrao de uma parte da sequncia. No possvel, porm efetuar clculos
matemticos e aritmticos, j que qualquer nmero armazenado numa varivel
desse tipo ser considerado como uma sequncia de texto e no um valor
numrico.
Podemos determinar um tamanho mximo para uma varivel do tipo String,
simplesmente adicionando um asterisco (*) seguido por um nmero que define o
tamanho mximo em caracteres. Por exemplo, para declarar uma varivel
strNomeCliente com um tamanho mximo de 50 caracteres, voc escreveria:
Dim strNomeCliente As String * 50
Se for armazenado uma cadeia de caracteres menor que o tamanho mximo
especificado, a varivel ser preenchida com espaos em branco direita para
complet-la. Se por outro lado, voc tentar armazenar mais caracteres do que o
permitido, os excedentes sero descartados.

Tipo Byte
Variveis do tipo Byte so tambm numricas, mas somente podem armazenar
nmeros na faixa de 0 255. Esse tipo de varivel tambm til em contador de
loops For...Next pequenos, cujo ciclo de repetio no ultrapasse 255.

Tipo Boolean
Uma varivel do tipo Boolean pode conter apenas dois tipos de valores: True
(verdadeiro) ou False (falso). So muito utilizadas como sinalizadores, ou seja,
variveis que indicam se uma determinada condio lgica retornou ou resultou
num desses dois valores. Veja o pequeno exemplo a seguir:
Dim blnRepete As Boolean
blnRepete = True
While blnRepete
'
'
'
Wend

Tipo Date
Variveis do tipo Date permitem o armazenamento de valores que representam
uma data do calendrio ou um horrio. Para armazenar uma data numa varivel,
especifique-a entre "#", como no seguinte exemplo:
dtDataVencimento = #05/06/99#
dtHora = #05:25:00#
Com valores do tipo Date possvel executarmos adio ou subtrao, para
assim calcularmos uma nova data. Por exemplo:
dtDataHoje = Now
dtDataAmanha = dtDataHoje + 1
dtDataOntem = dtDataHoje - 1

Tipo Object
Variveis do tipo Object podem fazer referncia a objetos definidos pelo Visual
Basic ou mesmo campos de uma base de dados, como dados OLE ou binrios.
Elas so armazenadas em endereos de 32 bits. Para esse tipo de varivel,
precisamos utilizar o comando de atribuio Set para assinalar valores a ela, em
no apenas o sinal de igualdade. O exemplo a seguir, ilustra sua utilizao:
Dim objDataBase As Object
Set objDataBase = OpenDataBase ("C:\VIDEO\VIDEO.MDB")

Tipo Variant
O dado Variant um tipo especial, j que ele permite que qualquer valor seja
armazenado. Se voc declara uma varivel mas no especifica seu tipo de dado,
o Visual Basic automaticamente atribui a ela o tipo Variant. Assim, o dado que
voc armazenar na varivel que definir o seu tipo naquele momento.
Podemos atribuir tambm um valor nulo a variveis Variant, especificando a
palavra-chave Null direita do sinal de igual. Diversas funes podem ser
utilizadas para determinarmos qual o tipo de dado armazenado numa varivel
Variant.

Constantes
As constantes, diferentemente das variveis, no podem ter seus valores
alterados durante a execuo da aplicao. Elas so utilizadas principalmente
para fornecer maior legibilidade ao cdigo fonte, substituindo expresses
numricas ou caracteres mais complexos e de difcil entendimento.
Suponhamos como exemplo, que voc tenha o seguinte cdigo:
Dim intNumeros ( 30 ), intContador As Integer
For intContador = 1 to 30
intNumeros ( intContador) = intContador * 10
'
'
Next
Se amanh voc precisasse modificar sua aplicao, aumentando o nmero
mximo de elementos da matriz intNumeros, teria de percorrer toda a listagem do
programa e alterar as ocorrncias do nmero 30 para a quantidade desejada de
elementos. Utilizando uma constante, esse problema seria facilmente resolvido.
Voc poderia incluir a seguinte linha na seo Declarations do mdulo principal
do programa:
Const Num_Elementos= 30
E no cdigo do programa, escreveria:
Dim intNumeros ( Num_Elementos ), intContador As Integer
For intContador = 1 to Num_Elementos
intNumeros ( intContador) = intContador * 10
'
'
Next
No caso de modificaes futuras, ser necessrio apenas alterao na definio
da constante e uma nova compilao.
O resto ficar por conta do Visual Basic. Um dos tipos de constantes mais famoso
o valor de PI (3,14159265358979...)

Operadores
De nada adiantaria termos dados e mais dados armazenados em nossas variveis
de memria ou em nosso banco de dados, se no pudssemos trabalhar com
eles, ou seja, se no fosse possvel fazer clculos, comparaes ou qualquer
outra operao. Para efetuarmos essas operaes que existem os operadores.
Eles podem ser divididos em quatro categorias bsicas:

Operadores Aritmticos;

Operadores Relacionais;

Operadores Lgicos;

Operadores de Strings.

Operadores Aritmticos
Como ocorre na matemtica comum, os operadores aritmticos permitem que
sejam feitos clculos com os dados armazenados em variveis ou em campos de
bases de dados. Eles somente podem ser utilizados com dados numricos. A
tabela a seguir, relaciona todos os operadores aritmticos disponveis no Visual
Basic.
Operador
Descrio
+
Efetua a soma entre dois ou mais nmeros.
Efetua a subtrao entre dois ou mais nmeros.
*
Efetua a multiplicao entre dois ou mais nmeros.
/

Efetua a diviso entre dois nmeros e resulta num nmero de


ponto-flutuante.

Efetua a diviso entre dois nmeros e resulta num nmero


inteiro.

Efetua a exponenciao.

Mod

Retorna o resto de uma diviso no exata entre dois nmeros

Estes operadores respeitam uma ordem de precedncia universal:


1. Exponenciao
2. Multiplicao e Diviso
3. Adio e Subtrao
O operador Mod utilizado para se encontrar o resto de uma diviso no exata.
Por exemplo, na diviso de 19 por 3, o resultado seria 6,333333 e mesmo assim
no seria um resultado preciso, j que se trata de uma dzima peridica. Assim se
multiplicssemos 6,333333 por 3, obteramos 18,999999.
Com o operador Mod na expresso 19 Mod 3, teremos como resultado o nmero
1, ou seja, o resto da diviso de 19 por 3. Isso significa que se voc multiplicar a
parte inteira de 6,333333, que 6, e somar o resultado ao resto obtido, no caso o
nmero 1, ter novamente o valor 19.

Operadores Relacionais
Os operadores relacionais, tambm chamados de operadores de comparao,
permitem que relacionemos (comparemos) dois valores entre si. Por exemplo,
para saber se o valor de uma determinada varivel X maior que o de uma
varivel Y, poderamos escrever:
X>Y
Isso nada mais que uma comparao entre as duas variveis.
A seguinte tabela, lista todos os operadores relacionais do Visual Basic. O
funcionamento de cada um deles no difere daquele empregado na matemtica
comum.

Operador
<
>
<=
>=
=
<>

Descrio
Menor que
Maior que
Menor que ou igual a
Maior que ou igual a
Igual a
Diferente de

Operadores Lgicos
Os operadores Lgicos como o prprio noem j diz, avaliam uma expresso
numrica ou caractere e retornam valores lgicos, ou seja, verdadeiro ou falso.
Por exemplo, se uma varivel, digamos X, possui o valor 100 e uma outra varivel
Y , possui o valor 500, ento a expresso a seguir avaliar verdadeiro.
X = 100 And Y = 500
A tabela a seguir, apresenta todos os operadores lgicos do Visual Basic:
Operador
And

Descrio

Efetua a operao lgica E. Se ambas as expresses forem


verdadeiras, ento o resultado ser verdadeiro.

Or

Efetua a operao lgica OU. Se uma das expresses (ou


ambas) for verdadeira, ento o resultado ser verdadeiro.

Not

Efetua a operao lgica NO. Inverte o estado lgico de


uma expresso, se ela for verdadeira, torna-a falsa e viceversa.

Xor

Efetua a operao lgica OU EXCLUSIVO. Se uma das


expresses for verdadeira, o resultado ser verdadeiro,
porm se ambas forem verdadeiras, o resultado ser falso.

Eqv

Efetua a operao de equivalncia de expresses. O


resultado ser verdadeiro somente se ambas as expresses
forem equivalentes.

Imp

Efetua a operao de implicao lgica. Retorna verdadeira


se uma expresso implica em outra.

Para entender melhor como funcionam os operadores lgicos, vamos analisar


cada um deles.

Operador Lgico And

O operador lgico And pode ser visto como um conector lgico. Imagine que voc
possua dois fios ligados a uma lmpada e a uma bateria. A lmpada somente
acender se voc tiver ligado ambos os fios aos plos da bateria. Acompanhe
esse exemplo:
Fio Vermelho Ligado
Falso
Verdadeiro
Falso
Verdadeiro

Fio Preto Ligado


Falso
Falso
Verdadeiro
Verdadeiro

Lmpada Acende
Falso
Falso
Falso
Verdadeiro

Operador Lgico Or
O operador lgico Or s vezes chamado somador lgico, uma vez que avalia
verdadeiro (1) sempre que uma das expresses for verdadeira (pode at ocorrer
de ambas serem verdadeiras).
Considere agora, como exemplo, que voc deseja escrever uma carta (ou quem
sabe um livro tambm sobre o Visual Basic). Se voc tiver uma mquina de
escrever (OR) um micro-computador, poder tranquilamente satisfazer seu
desejo. Acompanhe o exemplo:
Tem Mquina
Falso
Falso
Verdadeiro
Verdadeiro

Tem Micro
Falso
Verdadeiro
Falso
Verdadeiro

Pode Escrever
Falso
Verdadeiro
Verdadeiro
Verdadeiro

Operador Lgico Not


O operador lgico Not um operador de inverso, ou seja, ele transforma em
falsa uma expresso lgica que avalia verdadeiro, e vice-versa. Por exemplo, se
voc possui um carro e o pneu est furado, voc no (NOT) pode viajar. o que
mostra a tabela abaixo:
Pneu Furado
Falso
Verdadeiro

Pode Viajar
Verdadeiro
Falso

Operador Lgico Xor


O operador lgico Xor pode ser visto como um operador que no admite
ambiguidades, quer dizer, ou uma coisa ou outra, nunca ambas. Voltemos ao
nosso exemplo da lmpada e da bateria. Imagine agora que voc se encontra
perto de uma tomada. voc poder assim, ligar os fios da lmpada na bateria ou

na tomada da parede, mas no em ambas ao mesmo tempo. A tabela abaixo


ilustra essa situao:
Fio Ligado na Bateria
Falso
Verdadeiro
Falso
Verdadeiro

Fio Ligado na Tomada


Falso
Falso
Verdadeiro
Verdadeiro

Lmpada Acende
Falso
Verdadeiro
Verdadeiro
Falso

Operador Lgico Eqv


O operador Eqv utilizado para desempenhar uma equivalncia lgica entre duas
expresses. Por exemplo, se tivssemos as variveis Numero1 = 10, Numero2 = 8
e Numero3 = 5, a expresso lgica a seguir, resultaria em verdadeiro, j que
ambas as comparaes so equivalentes:
Numero1 > Numero2 Eqv Numero2 > Numero3

Operador Lgico Imp


O operador Imp talvez seja o mais complexo de todos. Ele utilizado para
desempenhar a funo de uma implicao lgica entre duas expresses. Ele
tambm desempenha uma comparao bit a bit dentro de uma expresso
numrica. A seguinte tabela, ilustra os resultados obtidos com o operador Imp de
acordo com as diversas possiblidades:

A primeira expresso
Verdadeiro
Verdadeiro
Verdadeiro
Falso
Falso
Falso
Nulo
Nulo
Nulo

A segunda expresso
Verdadeiro
Falso
Nulo
Verdadeiro
Falso
Nulo
Verdadeiro
Falso
Nulo

O resultado ser
Verdadeiro
Falso
Nulo
Verdadeiro
Verdadeiro
Verdadeiro
Verdadeiro
Nulo
Nulo

Para melhor entendimento, veja o exemplo a seguir:


Se Numero1 = 10, Numero2 = 8 e Numero3 = 5, ento temos que:
Numero1 > Numero2 Imp Numero2 > Numero3 verdadeiro.

Operadores de Strings

No Visual Basic, somente permitido dois tipos de operadores para se trabalhar


com strings, muito embora ambos possuam o mesmo efeito. So os operadores
"&" e "+".
Esses operadores servem para concatenar duas ou mais strings de caracteres.
Por exemplo, suponhamos que voc tenha definido duas variveis strings Rua e
Bairro. Para agrupar os seus valores numa nica varivel Endereo, voc poderia
utilizar um dos seguintes mtodos:
a.) Endereco = Rua & " " & Bairro
b.) Endereco = Rua + " " + Bairro

Comandos de Lao
Comando de Lao ou Estruturas de Repetio, como tambm so conhecidas.
possvel repetir-se um bloco de instrues dentro de um programa em Visual
Basic. Para isso existem sete tipos diferentes de estruturas de repetio,
denominadas de loops: Do While...Loop, Do...Loop While, Do Until...Loop,
Do...Loop Until, While...Wend, For...Next, For...Each...Next. Analisaremos cada
um dos tipos separadamente, verificando suas similaridades e diferenas.

Select Case
A estrutura Select Case similar estrutura switch...case da linguagem C, ao
Case of do Pascal ou ainda ao Do Case...EndCase do Dbase/Clipper. Ela comea
avaliando uma expresso e comparando o seu resultado com uma srie de
condies, at encontrar uma que se iguale ao resultado retornado pela
expresso. Quando isso ocorre, o cdigo que est ligado condio executado.
Essa estrutura uma alternativa mais flexvel e confivel ao If...Then...ElseIf.
importante observar que somente efetuada uma comparao do resultado da
expresso com as condies, portanto, se for necessrio efetuar outro tipo de
operao lgica, voc dever valer-se da estrutura If...Then...ElseIf. A sintaxe
dessa estrutura :
Select Case Opo
Case 1
Print "Opo 1 acionada"
Case 2
Print "Opo 2 acionada"
Case 3
Print "Opo 3 acionada"

Case Else
Print "Opo no 1,2 ou 3"
End Select
Acrescentando na estrutura a clusula Case Else (caso contrrio), o Visual Basic
ir verificar se a varivel 1,2 ou 3. No sendo, ento ser Case Else, e a linha
seguinte a esta clusula ser executada. No comando Case podemos usar
tambm intervalos, como por exemplo:
Case 2 to 4
Ou seja, caso a condio esteja entre 2 e 4.

Do While...Loop (Faa enquanto)


Executa todos os comandos que existem entre Do While e o Loop. Quando a
execuo do programa encontra o comando Loop, o Do While reavaliado e a
rotina continua at que a condio estabelecida esteja satisfeita.
Veja o exemplo abaixo:
Contador = 0
Do While Contador < 10
Contador = Contador + 1
Print Contador
Loop
Print "Fim de Execuo"
Inicializamos uma varivel de nome Contador com zero, e pedimos para o
programa: Repita as instrues abaixo enquanto Contador for menor que 10. O
comando Loop faz com que o programa volte para a linha do Do While e teste a
condio de novo. Somente quando a condio for verdadeira, ou seja, quando
Contador for maior ou igual a 10, que o programa executar a linha aps o Loop.
Perceba que, dependendo do resultado da condio, os comandos existentes
dentro da estrutura podem no serem executados, passando direto para a linha
aps o comando Loop.

Do...Loop While (Retorne enquanto)


Neste caso, o comando Do abre a sequncia de repetio, mas no faz nenhum
teste de condio. Este teste feito no final da estrutura com o comando Loop
While, ou seja, obrigatoriamente as instrues contidas aps o comando Do
sero executadas.
Contador = 0
Do
Contador = Contador + 1
Print Contador
Loop While Contador < 10
Print "Fim de Execuo"

Do Until...Loop (Faa at que)

Executa todos os comandos que existem entre Do Until e o Loop. Quando a


execuo do programa encontra o comando Loop, o Do Until reavaliado e a
rotina continua at que a condio estabelecida esteja satisfeita.
Contador = 0
Do Until Contador = 10
Contador = Contador + 1
Print Contador
Loop
Print "Fim de Execuo"
Inicializamos uma varivel de nome Contador com zero, e pedimos para o
programa: "Repita as instrues abaixo at que Contador seja igual a 10".
O comando Loop faz com que o programa volte para a linha do Do Until e teste a
condio de novo. Somente quando a condio for verdadeira, ou seja, quando
Contador for maior ou igual a 10, que o programa executar a linha aps o Loop.
Semelhante ao Do While, dependendo do resultado da condio, os comandos
existentes dentro da estrutura podem no serem executados, passando direto
para a linha aps o comando Loop.

Do...Loop Until (Repita at que)


O comando Do abre a sequncia de repetio, mas no faz nenhum teste de
condio. Este teste feito no final da estrutura com o comando Loop Until, ou
seja, obrigatoriamente as instrues contidas aps o comando Do sero
executadas.

Contador = 0
Do
Contador = Contador + 1
Print Contador
Loop Until Contador = 10
Print "Fim de Execuo"

For...Next (Conte o Intervalo)


O comando For faz uma contagem de um determinado intervalo de nmeros.
Sempre que essa contagem encontra com o comando Next (prximo), a execuo
do programa retorna ao comando For at que o nmero final seja alcanado.
Exemplo:
For Contador = 1 to 10
Print "A varivel Contador agora vale: " & Contador
Next
Print "Fim de Execuo"
Neste programa, o Visual Basic atravs do comando For, avisa "Vamos contar at
10, comeando pelo 1". As instrues contidas na linha abaixo so executadas, e
quando o comando Next encontrado, a execuo volta para o For e a varivel

Contador incrementada em mais um e assim por diante. Quando Contador for


igual a 10, a estrutura For/Next desfeita.

Step
Usamos Step em conjunto com o For para fazer com que a contagem seja
incrementada. Exemplo: Se queremos que o comando conte de 2 em 2 faremos:
For Contador = 1 to 10 Step 2

Exit
O comando Exit permite que se saia prematuramente de um loop, de uma funo
(Function) ou de um procedimento (Sub), transferindo o controle do programa
para a linha imediatamente seguinte. Dessa forma, se dentro de uma das
estruturas de repetio, o programa deparar-se com uma certa situao que
dever forar a interrupo do loop, poderemos utilizar esse comando. No
entanto, recomendamos utiliz-lo com cuidado, pois ele pode desestruturar o
programa, uma vez que com ele temos duas formas de sada de uma estrutura de
repetio ou procedimento/funo, e isso altamente desestimulado pelas
tcnicas de programao estruturada. A tabela a seguir, apresenta os formatos do
comando Exit para cada situao:
Utilizao
Dentro de um loop Do
Dentro de um loop For...Next
Para sair de uma funo
Para sair de um procedimento

Formato
Exit Do
Exit For
Exit Function
Exit Sub

Funes e Procedimentos
Alm dos formulrios, que compem a interface com o usurio, temos por trs
desses, diversas rotinas (funes e procedimentos) que executam as tarefas para
as quais a aplicao fora desenhada. So essas rotinas que fazem todo o
trabalho rduo de clculos, chamadas dos formulrios e execuo ordenada da
aplicao. nesta etapa do desenvolvimento do aplicativo que o programador
entrar com sua parte, definindo os algortmos e a lgica geral das rotinas.
Podemos concluir, portanto, que uma aplicao em Visual Basic uma unio
entre os formulrios e as rotinas, trabalhando amigavelmente.

O que uma Funo ?


Uma funo em Visual Basic, seja ela interna prpria linguagem ou
desenvolvida pelo programador, como sua similar na matemtica: ela opera nos

valores passados como parmetros (se houver algum) e devolve um outro valor.
Para declararmos uma funo devemos utilizar a palavra-chave Function.
Seguindo essa palavra-chave vem o nome da funo e, opcionalmente, uma lista
de eventuais parmetros dentro de parnteses.
A sintaxe completa a seguinte:
Function NomeFuno ( [ Parmetros ] )
Bloco de Instrues
End Function
Os nomes dos argumentos devem seguir as mesmas regras de nomeao de
variveis j vistas anteriormente. Eles devero vir tambm separados por vrgula.
Para retornarmos um valor rotina que chamou a funo, devemos atribuir esse
valor ao nome da prpria funo. No exemplo a seguir, temos uma funo que
recebe como parmetros dois nmeros, sendo que o primeiro se refere base e o
segundo potncia qual o nmero ser elevado. Ento ele calcula a potncia
do nmero (o prprio nmero multiplicado por ele mesmo) e devolve o valor
rotina chamadora. Exemplo:
Function Potencia ( intNumeroBase, intPotencia)
Dim LngResultado, intContador
lngResultado = 1
For intContador = 1 to intPotencia
lngResultado = lgnResultado * intNumeroBase
Next
Potencia = lngResultado
End Function
Na rotina chamadora, tudo que devemos fazer atribuir o valor da funo a uma
varivel de memria, como no exemplo:
NumElev = Potencia ( 5 , 3 )
Da mesma forma que voc d um escopo s variveis de memria, voc pode
tambm ocultar funes no Visual Basic, criando assim, funes que somente
podem ser acessadas pelos procedimentos e funes declarados no mesmo
mdulo. So verdadeiras caixas-pretas, uma vez que esto escondidas do resto
do programa. Elas so chamadas de funes privadas. Para declarar uma funo
privada ao mdulo, coloque a palavra-chave Private antes da declarao
Function, assim:
Private Function MinhaFunc ( )
'
'
'
End Function
Voc pode especificar tambm o tipo de dado retornado pela funo. Por
exemplo, podemos alterar nossa funo Potencia, vista anteriormente, para que
ela retorne um nmero de ponto flutuante:
Function Potencia ( intNumeroBase, intPotencia ) as Single
Dim LngResultado, intContador
lngResultado = 1
For intContador = 1 to intPotencia

lngResultado = lgnResultado * intNumeroBase


Next
Potencia = lngResultado
End Function
A varivel que receber o valor da funo deve obrigatoriamente ser do mesmo
tipo dessa.

O que um Procedimento ?
Um procedimento nada mais do que uma rotina desenvolvida especificamente
para executar uma determinada tarefa, como ocorre com as funes. Essa tarefa
pode inclusive ser genrica, ou seja, servir para aplicaes. Por exemplo,
podemos desenvolver um procedimento para abrir um formulrio e maximiz-lo na
tela, independente do formulrio (ou mesmo aplicativo) atualmente sendo
utilizado.
Podemos criar procedimentos dos mais simples at os mais sofisticados.
Depender apenas da sua criatividade. Um procedimento, diferentemente das
funes, no retorna qualquer valor rotina chamadora. Ele pode ser encarado
mais como um comando definido pelo programador/usurio, no sentido de que
apenas executa a tarefa para a qual fora concebido. Voc declara um
procedimento atravs da palavra-chave Sub, seguida pelo nome do
procedimento. Para finalizar o corpo do procedimento, utilize a palavra-chave End
Sub. A sintaxe correta para declarao de procedimentos :
Sub NomeProc ( [ parmetros] )
Bloco de Instrues
End Sub
Veja um exemplo de procedimento:
Sub TestePot( )
Dim NumElev as Long
NumElev = Potencia ( 5,4 )
Debug.Print NumElev
End Sub

Passando Parmetros
Embora j tenhamos utilizado a passagem de parmetros a procedimentos e
funes, veremos neste tpico, maiores detalhes sobre esse assunto. Primeiro,
voc dever especificar os parmetros a serem recebidos atravs de uma lista de
parmetros colocada entre parnteses aps o nome do procedimento/funo.
Esses parmetros, dentro do procedimento ou funo, iro comportar-se como
variveis comuns, podendo ser manipulados como tais. Vamos tomar como
exemplo nossa funo que calcula a potncia de um dado nmero:
Function Potencia ( intNumeroBase, intPotencia )
Dim LngResultado, intContador
lngResultado = 1
For intContador = 1 to intPotencia
lngResultado = lgnResultado * intNumeroBase

Next
Potencia = lngResultado
End Function
Voc dever prestar bastante ateno quanto ao nmero de parnteses a serem
passados a uma funo ou procedimento, isso para evitar, por exemplo, que voc
passe quatro parmetros quando na verdade a funo/procedimento espera por
cinco ou mais. Para invocar uma funo com parmetros, voc os especifica entre
os parnteses. No entanto, como veremos mais adiante, h uma maneira de se
contornar esse tipo de problema.
J com procedimentos, isso muda um pouco. Se o procedimento espera apenas
um parmetro, voc poder utilizar duas formas de chamada: colocando os
parmetros entre parnteses ou diretamente aps o nome do procedimento,
separando-os por um espao. Se o procedimento possuir mais de um parmetro,
ento voc poder especific-los utilizando o formato direto (sem parnteses),
sendo que os parmetros devero ser separados por vrgulas. Voc pode tambm
chamar um procedimento passando mais de um parmetro entre parnteses,
porm dever fazer a a chamada com a palavra-chave Call:
Sub ChamaCall ( )
Call MinhaFuncao ( "Um Texto" , "Outro Texto" , 200, 40 )
End Sub
Caso deseje, poder especificar os tipos dos parmetros logo aps a declarao
dos mesmos, como mostrado a seguir:
Function Potencia ( intNumeroBase as Integer, intPotencia as Integer)
Dim LngResultado, intContador
lngResultado = 1
For intContador = 1 to intPotencia
lngResultado = lgnResultado * intNumeroBase
Next
Potencia = lngResultado
End Function

Passagem de Parmetros por Valor ou por Referncia


Procedimentos e Funes no Visual Basic podem ter ou no a capacidade de
alterar o valor dos parmetros recebidos. Para isso, podemos especificar os
parmetros por valor ou por referncia. No primeiro caso, o procedimento ou
funo recebe uma cpia dos valores passados como parmetros, assim qualquer
alterao nesses valores no ser refletida na rotina chamadora, j que as
alteraes afetam apenas a cpia. Para especificar uma passagem de parmetros
por valor, utilize apenas a palavra-chave ByVal Antes de cada um deles,
conforme mostrado a seguir:
Sub PassaValor ( ByVal strNome as String , ByVal intIdade as Integer )
'
'
End Sub
No segundo caso, o padro do Visual Basic, o procedimento ou funo pode
alterar livremente os valores dos parmetros. Essas alteraes so refletidas nas
variveis da rotina chamadora aps o retorno da funo/procedimento. como se

passssemos o endereo da varivel de memria. No preciso nenhuma


palavra-chave para se passar um parmetro por referncia, simplesmente
especifique-os na declarao da funo/procedimento:
Sub PassaReferencia ( strNome as String, intIdade as Integer)
'
'
End Sub
Utilizando essa habilidade de alterao dos valores de parmetros, podemos criar
funes que retornam mais de um valor rotina chamadora, ou mesmo ter
procedimentos que retornam valores indiretamente. Por exemplo, no seguinte
cdigo, a funo Incr( ) atualiza os valores dos dois parmetros e os retorna.
Function Incr ( intParam1 as Integer, intParam2 as Integer)
intParam1 = intParam1 + 1
intParam2 = intParam2 + 1
End Function

Parmetros Opcionais
Popemos criar rotinas que recebem parmetros opcionalmente, ou seja, sua
passagem no obrigatria. Para fazer isso, declare todos os parmetros com a
palavra-chave Optional frente, como no seguinte exemplo:

Sub ParamOpcional ( Optional strNome as Variant , Optional strSobreNome


as Variant )
Dim strNomeCompleto as String
strNomeCompleto = strNome + " " + strSobreNome
'
'
End Sub
Note que os parmetros opcionais devero obrigatoriamente ser do tipo Variant
e que se voc especificar um parmetro opcional, todos os parmetros
subsequentes a esse tambm precisaro ser declarados como opcionais. Isso
demonstrado no seguinte cdigo:
Sub ParamOpcional2 ( Optional strNome as String , strSobreNome as String ,
Optional intIdade as Variant, Optional sngAltura as Variant )
Dim strNomeCompleto as String
strNomeCompleto = strNome + " " + strSobreNome
'
'
End Sub

Nmero Indefinido de Parmetros

Como dissemos anteriormente, voc precisa especificar o nmero de parmetros


na chamada da rotina de acordo com a sua declarao, ou seja, se a rotina
espera por cinco parmetros, ento voc precisa passar cinco parmetros na sua
chamada. No entanto, o Visual Basic possibilita que, atravs da palavra-chave
ParamArray, especifiquemos um nmero indefinido de parmetros. A
quantidade real de parmetros recebidos somente ser estabelecida no momento
da chamada da rotina. O exemplo a seguir, demonstra como utilizar um
procedimento com nmero indefinido de parmetros:

Function CalcTotal ( ParamArray intQuantos( ) ) as Long


Dim varElementos as Variant, lngTotal as Long
lngTotal = 0
For Each varElementos In intQuantos
lngTotal = lngTotal + varElementos
Next varElementos
CalcTotal = lngTotal
End Function

Referncias
Existem centenas de funes desenvolvidas internamente no Visual Basic.
Abaixo encontra-se uma pequena relao das funes mais comuns:
Fune
Abs
Atn
Cos
Exp
Fix
FV
Hex
Int
Ipmt
IRR
Log
Mirr
Nper
Npv
Pmt
PV
Rate
Rnd
Sgn
Sin
Sln
Sqr

Descrio
Encontra o valor absoluto de um nmero.
Encontra o arco tangente.
Encontra o co-seno.
Eleva e (2,718u2) a uma potncia dada.
Retorna a parte inteira de um nmero.
Valor futuro.
Fornece o hexadecimal equivalente.
Encontra o maior valor inteiro.
Juros pagos por tempo.
Taxa interna de retorno.
Logartmo comum.
Taxa interna de retorno modificada.
Tempo de acmulo de uma anuidade.
Valor presente lquido.
Gastos com anuidade.
Valor presente.
Taxa de juros por perodo por uma anuidade.
Chama o gerar de nmero aleatrio.
Retorna o sinal de um nmero.
Retorna o seno.
Depreciao linear.
Raiz quadrada.

Syd
Tan
Timer

Soma da depreciao do ano.


A tangente de um ngulo em radianos.
Retorna o nmero de segundos desde meia-noite.

As funes alfa-numricas mais comuns:


Fune

Descrio

Asc

Retorna o cdigo do caractere correspondente a primeira


letra.

InStr

Retorna a posio da primeira ocorrncia de uma cadeia


dentro de outra.

LCase

Converte a cadeia de caracteres em minscula.

Left

Encontra ou remove um nmero especfico de caracteres do


incio de uma cadeia.

Len

Fornece o comprimento de uma cadeia de caracteres.

Ltrim

Remove os espaos do incio de uma cadeia de caracteres.

Mid

Encontra ou remove caracteres de uma cadeia.

Right

Encontra ou remove um nmero especfico de caracteres do


final de uma cadeia.

Rtrim

Remove os espaos do final de uma cadeia de caracteres.

Str

Retorna a cadeia de caracteres equivalente ao nmero.

StrComp

Compara cadeia de caracteres.

StrConv

Converte uma cadeia de caracteres de um formulrio para


outro.

String

Retorna a repetio de uma cadeia de caracteres idnticos.

Trim

Remove os espaos do incio e do fim de uma cadeia de


caracteres.

Ucase

Converte uma cadeia de caracteres em maiscula.

As funes data-hora:
Fune
Date
DateAdd

Descrio
Retorna a data corrente.
Permite que voc adicione um intervalo especfico a uma

data.
DateDiff

Calcula diferenas entre datas.

DateSerial

Retorna uma data correspondente a um dia, m e ano


especficos.

DateValue

Transforma uma cadeia de caracteres em data.

Day

Informa qual dia em uma cadeia de caracteres alfa-numricos


ou nmeros representa.

Hour

Informa qual hora uma cadeia de caracteres alfa-numricos


ou nmeros representa.

Minute

Informa quantos minutos uma cadeia de caracteres alfanumricos ou nmeros representa.

Month

Informa qual ms uma cadeia de caracteres alfa-numricos


ou nmeros representa.

Now
Second
Time
TimeSerial
Weekday
Year

Retorna a data e horrio correntes.


Informa quantos segundos uma cadeia de caracteres alfanumricos ou nmeros representa.
Informa o horrio corrente.
Retorna uma varivel do tipo data para o horrio fornecido.
Informa o dia da semana correspondente data.
Informa a qual ano uma data corresponde.

Banco de Dados
Sempre que trabalhamos com qualquer tipo de dado devemos grav-los em
arquivos para no perd-los quando desligamos o computador. Chamamos esses
arquivos que recebem vrios dados de Banco de Dados. Iremos abordar o padro
MDB (Microsoft DataBase) que representa a grande maioria de arquivos de
Banco de Dados para Windows existente hoje. Esse padro utilizado pelo
Microsoft Access e o Visual Basic tambm o aceita.

Caractersticas
Um arquivo que contm dados ir possuir a extenso MDB. Exemplo: Se temos
um banco de dados de um controle de estoque possivelmente ele ter o nome de
"Estoque.MDB". Dentro de um arquivo deste podemos ter vrias Tabelas. No
exemplo de um controle de estoque, podemos ter uma tabela para Mercadorias,
Fornecedores, Clientes, etc. Todas essas tabelas ficam armazenadas dentro do
arquivo MDB. Cada tabela possui Campos onde sero armazenados os dados.
Por exemplo, na tabela Mercadoria temos o campo de Descrio da Mercadoria,
Quantidade no Estoque, Valor de Venda, etc. Tudo isto representa os Campos
que esto armazenados dentro da tabela. Dentro dos campos que esto os
dados que precisamos armazenar, veja a disposio da hierarquia:
Quando estamos na fase de desenvolvimento de um programa que ir gerenciar
um banco de dados, podemos deixar j criado o Banco de Dados com suas

tabelas e campos. Somente os dados que sero inseridos pelo usurio a


medida que for trabalhando com seu programa. Para criar um banco de dados o
Visual Basic traz uma ferramenta chamada Visual Data Manager. Ele se
encontra no menu Add-Ins.

Visual Data Manager


O data manager (Gerenciador de Banco de Dados) a nica maneira de se
construir um banco de dados diretamente dentro do Visual Basic. Ele est
disponvel no menu Add-Ins, mas , na realidade, um aplicativo separado
(VISDATA.EXE) que pode ser executado independentemente do Visual Basic. A
tela principal do Data Manager semelhante da figura abaixo:

O data manager permite que voc olhe a estrutura de um banco de dados


Microsoft Access ( Jet ). Ele tambm pode construir um novo banco de dados em
formato Jet. Isso normalmente chamado de formato .MDB para o nome do
arquivo.

Operaes com o Data Manager


Alm de editar ndices, o Data Manager permite que voc crie bancos de dados,
adicione registros em tabelas e elimine registros. Mova para um registro que voc
deseja utilizando os botes de setas e d um clique no boto excluir.
O Data Manager tambm permite que voc acrescente novos campos a uma
tabela j existente no banco de dados. Abra um banco de dados j existente e
ento d um duplo clique na estrutura. Agora o boto Adicionar permite que voc
atualize a tabela. O Data Manager tambm permite que voc elimine campos,
renomeie-os ou modifique qualquer de suas propriedades.
Por fim, ao excluir e adicionar registros, seus bancos de dados crescero
rapidamente. Por essa razo, voc poder querer utilizar, periodicamente, a
opo Compact Database no menu File. Voc poder apenas compactar bancos
de dados no formato Microsoft Access (MDB).

Como Criar uma Base de Dados


No menu File, escolha a opo New. Os bancos de dados com que o Data
Manager capaz de trabalhar, sero exibidos. Ento, escolha o Microsoft Access
em sua ltima verso.

Fornea a localizao e o nome da base de dados a ser criada.

Trabalhe somente na janela Database Window, ela responsvel pelo Access.


Nela d um clique com o boto direito do mouse sobre a opo Properties e
escolha o tem New Table.

Esta a janela de criao da estrutura da tabela. As informaes contidas nesta


janela, sero utilizadas para que a tabela da base de dados seja construda.
Fornea o nome dos campos necessrios, o nome do ndice da tabela e
posteriormente o boto Build the Table (Construir Tabela) ser habilitado.

Para adicionar os campos necessrios na tabela clique no boto Add Field


(Adicionar Campo). Fornea o nome do campo (Name), Tipo (Type) e Tamanho
(Size) se necessrio.

Para adicionar o ndice da tabela, clique no boto Add Index (Adicionar ndice),
posicionado abaixo da lista de campos que foram adicionados tabela.

Exerccio Final Proposto


Construir um simples sistema de Cadastro de Funcionrios:
Siga os seguintes passos:

No menu File escolha a opo New Project;

Escolha ento o tipo de projeto Standard Exe.

Feito isto, construa os seguintes objetos no formulrio, utilizando-se das


propriedades descritas na tabela abaixo:

Name
Caption - Text
FrmCadastro
lblcodigo
Cdigo do Funcionrio
lblnome
Nome do Funcionrio
lblendereco
Endereo Residencial
lblbairro
Bairro
lblcidade
Cidade
lblestado
Estado
lbltelefone
Telefone
lblidentidade
Identidade
lblsalario
Salrio
dtcfunc
Funcionrios
txtcodigo
txtnome
txtendereco
txtbairro
txtcidade
cmbestado
SP, RJ, ES, MG
txttelefone
txtidentidade
txtsalario
cmdprimeiro
&Primeiro
cmdanterior
An&terior
cmdproximo
Pr&ximo
cmdultimo
ltim&o
cmdadicionar
&Adicionar
cmdremover
Re&mover
cmdalterar
Alt&erar
cmdimprimir
&Imprimir
cmdlimpar
&limpar
cmdsobre
&Sobre
cmdfechar
&Fechar
Na propriedade Name do formulrio digite FrmFunc e na propriedade Caption
digite "Cadastro de Funcionrios".
O resultado obtido dever ser o formulrio abaixo:

Aps termos construdo a tela, deveremos desenvolver os menus. Para isto, voc
dever clicar no menu Tools e escolher o item Menu Editor. A outra maneira
clicando sobre a terceira cone da barra de ferramentas do Visual Basic.

ou

Confira abaixo a tela que se abrir:

Nesta tela voc dever cadastrar todos os menus que seu software ir precisar e
os tens que devero estar contidos nesses menus.
Abaixo esta a relao dos menus e tens a serem criados.
Caption
&Registros
&Adicionar
Re&mover
Alt&erar
&Limpar
&Imprimir
&Fechar
&Navegar
&Primeiro
An&terior
Pr&ximo
ltim&o
Aj&uda
&Sobre o Sistema

Name
mnuregistros
mnuadicionar
mnuremover
mnualterar
mnutraco1
mnulimpar
mnuimprimir
mnutraco2
mnufechar
mnunavegar
mnuprimeiro
mnuanterior
mnuproximo
Mnuultimo
Mnuajuda
Mnusobre

O resultado obtido dever ser:

Atalho
F2
F3
F4
F5
F6
F12
Ctrl+P
Ctrl+T
Ctrl+X
Ctrl+O
F1

Obs: No necessrio deixar espaos no topo do formulrio para que os menus


se encaixem posteriormente, o prprio menu se encarrega de empurrar todos os
objetos contidos no Form para baixo.
Feito isto, adicione mais um form no projeto. Para isto, voc dever clicar no
menu Project e escolher o item Add Form. A outra maneira clicando sobre a
segunda cone da barra de ferramentas do Visual Basic.

ou

O resultado ser:

E tambm na janela de projetos:

Feito isto, construa os seguintes objetos no formulrio, utilizando-se das


propriedades descritas na tabela abaixo:
Name
Image1

Caption Text
-

lblinformacao

Sistema de Cadastro de
Funcionrios produzido no
curso de Visual Basic 6.0

cmdvoltar

&Voltar

Na propriedade Name do formulrio digite FrmSobre e na propriedade Caption


digite "Sobre o Sistema".
O resultado obtido dever ser o formulrio abaixo:

Aps termos construdo as telas, deveremos passar para a parte da programao.


Para gerar a programao, devemos clicar duas vezes no objeto desejado.
Abaixo segue a programao dos formulrios FrmFunc e FrmSobre:

No momento de salvar, o nome a ser dado ao projeto PrjFunc.

BY Aulus Plautius

Você também pode gostar