Escolar Documentos
Profissional Documentos
Cultura Documentos
&
Teria
Prtica
Universidade Pedaggica
Nampula
2013-2014
xii
NDICE
Dedicatria
Agradecimentos
Lista de Figuras
Lista de Tabelas
Lista de Siglas e Abreviaturas
Sobre o Autor
Notas do Autor
Antes de comear
vi
vii
viii
x
xi
xii
xiii
xiv
10
30
LISTA DE FIGURAS
Figura 1: Ambiente de Desenvolvimento Integrado do Visual Basic 6.0.................................4
Figura 2: Caixa de dilogo New Project (Escolher o tipo de Projecto)....................................5
Figura 3: Identificando os elementos do Ambiente de Trabalho (IDE)....................................6
Figura 4: Barra de Menus do Visual Basic 6.0........................................................................7
Figura 5: Barra de ferramentas Standard do Visual Basic 6.0................................................8
Figura 6: Barra de ferramentas Debug do VB 6.0..................................................................9
Figura 7: Barra de ferramentas Edit do Visual Basic 6.0........................................................9
Figura 8: Barra de ferramentas Form Edit do Visual Basic 6.0.............................................10
Figura 9: Janela de Projectos (Project Explorer)..................................................................10
Figura 10: Janela de Propriedades (Properties)...................................................................10
Figura 11: Janela do Form Layout (Layout do formulrio)....................................................11
Figura 12: Formulrio (Form)................................................................................................11
Figura 13: Caixa de ferramentas e/ou controlos (ToolBox)...................................................12
Figura 14: Janela de cdigo.................................................................................................13
Figura 15: Barra de ferramentas da Janela Project Explorer (View Code)...........................14
Figura 16: Janelas Immediate, Locals e Watch do IDE do Visual Basic 6.0.........................14
Figura 17: Janela Object Browser (Lista de Objectos).........................................................15
Figura 18: Interface do IDE do Visual Basic 6.0 no modo SDI.............................................16
Figura 19: Interface do IDE do Visual Basic 6.0 no modo MDI.............................................16
Figura 20: Menu Tools e suas opes..................................................................................17
Figura 21: Sub-menu Options..............................................................................................17
Figura 22: Aba Editor Format...............................................................................................18
Figura 23: Aba General........................................................................................................ 19
Figura 24: Aba Docking........................................................................................................19
Figura 25: Aba Environment.................................................................................................20
Figura 26: Aba Advanced.....................................................................................................20
Figura 27: Analogia dos conceitos bsicos do Visual Basic 6.0............................................22
Lista de tabelas
Tabela 1: Descrio dos elementos do IDE do Microsoft Visual Basic 6.0..............................6
Tabela 2: Descrio dos menus que compem a barra de menus.........................................7
Tabela 3: Descrio das ferramentas que compem a barra de ferramentas Standard.........8
Tabela 4: Prefixos de controlos (ordem alfabtica)...............................................................24
Notas do autor...
Esta sebenta destina-se especialmente a estudantes do curso de informtica possuindo
conhecimentos bsicos de programao. Minha experincia leccionando disciplinas de
programao, aliada necessidade de ter um material de apoio tcnico mais completo, me
levaram a escrever esta sebenta.
Entretanto, passei a perceber outras necessidades em sala de aula, nessa e em outras
disciplinas: um material de apoio prtico, que pudesse ser usado para fixao da matria.
Notei que essa no era uma necessidade s da docncia, mas tambm do estudante que
entende a teoria, mas no consegue sair do ponto zero, no consegue comear. Porque
sem prtica no possvel aprender. Sem exerccios no h como termos certeza do
aprendizado.
E olhando para minha experincia, percebi que tambm temos a necessidade do exemplo,
principalmente quando aprendemos sozinhos. Nesse caso, aprendemos por meio de
tentativas e erros, exemplos e exerccios.
xiii
ANTES DE COMEAR...
Visual Basic uma linguagem de programao orientada a objectos (a partir da verso 4)
criada pela Microsoft. Esta linguagem incorpora todas as ferramentas necessrias para a
criao de qualquer aplicao para Windows.
Visual Basic uma linguagem visual que origina da linguagem de programao BASIC. A
programao em Visual Basic se baseia em um ambiente de desenvolvimento totalmente
grfico, que facilita a criao de interfaces grficas, e em certa medida, tambm a
programao propriamente dita.
Todos os programas que desenvolvermos em Visual Basic sero por defeito, programas com
todas as caractersticas de uma aplicao tpica de Windows.
10
CONCEITOS BSICOS
A linguagem de programao utilizada pela ferramenta de desenvolvimento Microsoft Visual
Basic 6.0 o BASIC2. Basicamente, uma aplicao Visual Basic 6.0 composta por
objectos. Um objecto uma combinao de cdigos e dados que podem ser tratados como
uma unidade. Podemos dizer, a grosso modo, as aplicaes Visual Basic 6.0 apresentam
dois tipos de objectos, a saber:
Forms (Formulrios) Representam as telas dos programas (janelas de aplicao,
janelas de documento, caixas de dilogo e caixas de mensagens).
Controlos So objectos que possuem uma forma visual predefinida para cada tipo
de operao que o mesmo realizar.
A juno de formulrios e controlos permite estabelecer a interface (comunicao com o
usurio) das aplicaes Visual Basic, isto , sempre que uma aplicao for desenvolvida, o
procedimento bsico a ser realizado inserir controlos nos formulrios.
Apresentamos, a seguir alguns conceitos inerentes aos objectos:
Utilizando-se do OLE (Object Linking and Embedding) pode-se utilizar funcionalidades de outras ferramentas
10
10
Barra de Menus
Barra
de
Ferramentas3
(ToolBar)
O Microsoft Visual Basic 6.0 Professional Enterprise Edition possui quarto barras de ferramentas, a saber:
4 Dentro dos arquivos de projecto, temos todos os elementos necessrios para a vida til de nossa aplicao.
Janela
de
Propriedades
(Properties)
Form
Layout
(Layout
do
Formulrio)
Form (Formulrio)
Caixa
de
Ferramentas
(ToolBox)
BARRA DE MENUS
Figura 4: Barra de Menus do Visual Basic 6.0.
Fonte: (Autor, 2014).
Legenda:
Tabela 2: Descrio dos menus que compem a Barra de Menus.
Menu
Descrio
Lida com os arquivos e a impresso; tambm cria arquivos executveis.
File (Arquivo)
Executa as funes padro de edio, Undo (Desfazer) e Pesquisas.
Edit (Editar)
Exibe ou oculta janelas e barras de ferramentas.
View (Exibir)
Project (Projecto)
Format (Formatar)
Debug (Depurar)
Em sntese a biblioteca significa MicroSoft Visual Basic Virtual Machine e a verso do Visual Basic, ou seja,
Run (Executar)
Query (Consultar)
Diagram (Diagrama)
Tools (Ferramentas)
Add-ins (Acrscimos)
Window (Janela)
Help (Ajuda)
Fonte: (HOLZNER, 1999: 176).
1 Barra de ttulos
2 ComboBox de Objectos
3 Guia de modo de exibio (classificao)
4 Lista de valores das Propriedades
5 Lista de Propriedades
6 Descrio da Propriedade actual
6
Fonte: (Autor, 2014).
1 Representao da rea do
Desktop
2
Representao
do
posicionamento do formulrio actual
FORMULRIO (FORM)
Figura 12: Formulrio (Form).
Descrio
Apontador (Point) Esse no bem um controle e, sim uma
ferramenta utilizada para inserir, movimentar e/ou dimensionar os
diversos objectos de uma aplicao.
Caixa de figura (PictureBox) Permite a exibio de figuras e o
agrupamento de Controlos, tais como botes de comando, em
formulrios do tipo Multiple Document Interface (MDI).
Rtulo (Label) Serve para exibir um texto que no pode ser
editado pelo utilizador, como uma mensagem ou o rtulo de um
campo a ser digitado.
Caixa de texto (TextBox) Usado para criar caixas de edio,
onde o usurio insere texto.
Moldura (Frame) Usado para criar uma moldura que agrupe
Controlos.
Boto de comando (CommandButton) Sua funo principal
executar comandos quando clicado. , provavelmente, o controle
mais usado em programao visual.
Boto de checagem (CheckBox) Usado para criar um boto
de checagem, ou seja, mltiplas escolhas.
Boto de opo (OptionButton) Usado para determinar se
uma informao verdadeira ou falsa, somente um boto pode
estar ligado, num dado momento, para cada conjunto desses
Controlos.
ComboBox Usado para desenhar uma lista de itens em uma
caixa combo. O usurio poder interagir com a lista inserida na
caixa combo.
ListBox Usada para mostrar uma lista de itens em uma caixa
de lista, para que o usurio escolha um item.
HscrollBar Usada para inserir uma barra de rolagem horizontal.
VscrollBar Usada para inserir uma barra de rolagem vertical.
Timer Temporizador para controlar eventos. Este controle
invisvel durante a execuo da aplicao.
DriverListBox Usada para mostrar uma lista de drives.
DirListBox Usada para mostrar uma lista de directrios.
FileListBox Usada para mostrar uma lista de arquivos.
Shape Usada para desenhar algumas figuras geomtricas.
Line Usada para desenhar linhas.
Image Usada para mostrar imagens bitmaps, cones ou
metafile.
Por fim, aps seleccionar o formulrio clicar no cone (vide figura15) da Janela de
Projectos (Project Explorer).
O sub-menu conta com 6 (seis) abas: Editor, Editor Format, General, Docking, Environment
e Advacend. Na aba Editor (figura 21) temos dois agrupamentos (configuraes do cdigo
(Code Settings) e configuraes da janela (Window Settings)). No primeiro agrupamento,
podemos autoverificar a sintaxe do cdigo (Auto Syntax Check), requerer declarao de
varivel (Require Variable Declaration), autolistar membros (Auto List Members),
informaes rpidas automticas (Auto Quick Info), dicas automticas de dados (Auto Data
Tips) e auto indentar (Auto Indent) atravs da largura da tabulao (Tab Width).
No segundo agrupamento, podemos optar por recurso de edio arrastar-e-soltar (Dragand-Drop Text Editing), padro para modo de exibio de mdulo completo (Default to Full
Module View) e separador de procedimento (Procedure Separator).
Na aba Editor Format (Formato do Editor) podemos personalizar por cores de cdigo (Code
Colors), tipo de fonte (Font), tamanho da fonte (Size), exibir barra indicadora de margem
(Margin Indicator Bar) (figura 22).
Na aba Geral (General) podemos fazer s configuraes da grade do formulrio (Form Grid
Settings), interceptao de erros (Error Trapping), compilar (Compile), mostrar dicas de
ferramentas (Show ToolTips) e ocultar janelas ao recolher projecto (Collapse Proj. Hides
Windows) (vide figura 23).
Na aba Encaixe (Docking) onde iremos encaixar os elementos que compem o Ambiente
de Desenvolvimento Integrado do Visual Basic 6.0 como podemos observar na figura 24.
Na aba Ambiente (Environment) (figura 25) podemos padronizar quando o Visual Basic (VB)
for iniciado (When Visual Basic Starts) se optarmos por criar um Projecto Padro (Create
Default Project) sempre que iniciarmos o Visual Basic 6.0 no teremos a caixa de dilogo de
New Project (Novo Projecto) (figura 2).
Podemos tambm optar exibir modelos para (Show Templates For) formulrios (Forms),
formulrios MDI (MDI Forms), mdulos (Modules), Mdulos de Classe (Class Modules),
Controlos de Usurio (User Controls), Pgina de Propriedades (Property Pages) e
Documentos de Usurio (User Document). Para alm dessas opes, tambm podemos
escolher quando a aplicao for iniciada (When a Program Starts) se queremos salvar
alteraes (Save Changes), Perguntar se deseja salvar (Prompt To Save Changes) e No
salvar alteraes (Dont Save Changes) e, por fim, indicamos o directrio de modelos
(Templates Directory).
Na aba Avanado (Advanced) (vide figura 26) podemos carregar Projecto em Segundo
Plano (Background Project Load), Notificar se itens compartilhados do Projecto forem
alterados (Notify when changing shared project items), escolher o Ambiente de
Desenvolvimento SDI (SDI Development Environment) e escolher o Editor HTML Externo
(External HTML Editor).
PROGRAMAO ORIENTADA
ORIENTADA A EVENTOS
OBJECTOS
versus
PROGRAMAO
Em meados dos anos 80, surgiu um novo conceito de programao conhecido como
Programao Orientada a Objectos (POO). A principal ideia da POO consiste em classes de
objectos distintas que partilham seus estilos, caractersticas e funcionalidades. Uma
aplicao orientada a objectos rene dados e cdigos que facilitam o desenho, a
organizao e o trabalho com aces e estruturas complexas.
Diante do exposto, conclui-se que o Microsoft Visual Basic 6.0 uma ferramenta de
desenvolvimento que assenta no paradigma orientado a objectos (POO). Atravs do Visual
Basic 6.0 podemos criar classes de objectos, seus controlos, suas propriedades, suas
estruturas, seus mtodos particulares e at mesmo suas prprias bibliotecas (.DLL), com a
vantagem de reutiliz-los em qualquer aplicao. Como forma, de melhor compreendermos
podemos dizer que o POO um conceito e no um estilo de programao. Na verdade, o
estilo de programao permitido no Microsoft Visual Basic 6.0 a programao orientada a
eventos.
O PROCESSO DE PROGRAMAO
Depois de um tempo, cada aprendiz descobrir sua prpria maneira de escrever programas
adequados ao seu estilo. Entretanto, iremos geralmente seguir esses conjuntos padro de
etapas ao criar os nossos programas Visual Basic:
(i) Decida o que sua aplicao dever fazer, criando uma viso geral do projecto;
(ii) Crie a parte visual da sua aplicao (as telas e os menus com que seus usurios iro
interagir);
(iii) Adicione o cdigo de linguagem de programao Visual Basic para amarrar os
elementos visuais e automatizar o programa;
(iv) Teste sua aplicao para localizar e remover qualquer bug que encontrar;
(v) Compile sua aplicao, testando e distribua-o para os usurios.
Prefixo
pnl
ado
ani
chk
cbo
cmd
Tipo de controlo
Lightweight frame (Quadro simples)
Lightweight horizontal scroll bar
(Barra de
simples)
paginao
horizontal
Lightweight
vertical
scroll
bar
Prefixo
lwfra
lwhsb
lwist
lwopt
lwtxt
lwvsb
dlg
Line (Linha)
lin
com
lst
tipo
ctr
lvw
Data (Dados)
Data-bound combo box (Quadro
dat
mpm
dbcbo
mps
dbgrd
MCI
mci
dblst
Menu
mnu
dbc
dgd
mvw
ch
dbl
msg
drp
mst
dtp
ole
dir
opt
drv
pic
clp
fsb
prg
frm
fra
gau
gra
grd
hdr
rd
rtf
shp
sld
spn
sta
flex
sys
hsb
tab
img
imgcbo
ils
lbl
txt
tmr
tlb
tre
lwchk
upd
comum)
Communications
(Comunicaes)
Control (Controlo) (usado em
procedimentos quando o
especfico desconhecido)
Image (Imagem)
Image combo (combo de imagem)
Image list (Lista de imagens)
Label (Etiqueta)
Lightweight checkbox (Quadro de
seleco simples)
Lightweight
command
button
fil
lwcbo
lwcmd
vsb
JANELA DE PROPRIEDADES
As propriedades podem estar categorizadas em: aparncia, comportamento, DDE, diversos,
escala, fonte e posio.
Tabela 5: Propriedades na categoria de aparncia.
Propriedade
Descrio
Appearance
BackColor
BorderStyle
Caption
FillColor
FillStyle
FontTransparent
ForeColor
Palette
Picture
ClipControls
DrawMode
DrawStyle
DrawWidth
Enabled
0 - Flat
1 3D
Paleta
Sistema
RGB
0 - None
1 Fixed Single
2 (Default) Sizable
3 Fixed Dialog
4 Fixed ToolWindow
5 Sizable ToolWindow
Paleta
Sistema
RGB
0 Solid
1 Transparent
2 Horizontal Line
3 Vertical Line
4 Upward diagonal
5 Downward diagonal
6 Cross
7 Diagonal Cross
Valor
Valor
True
False
HasDC
OLEDropMode
PaletteMode
RughtToLeft
Visible
False
True
Valor
LinkMode
LinkTopic
Valor
True
False
True
False
MaxButton
True
False
MDIChild
True
False
MinButton
True
False
MouseIcon
MousePointer
0 Default
1 Arrow
2 Cross
3 I-Beam
4 Icon
5 Size
6 Size NE SW
7 Size N S
8 Size NW SE
9 Size W E
10 Up Arrow
11 Hourglass
12 No Drop
propriedade
NegotiateMenus
ShowInTaskbar
True
False
0 Normal
1 Minimizada
2 - Maximizada
Tag
WhatsThisButto
n
WhatsThisHelp
WindowState
Valor
ScaleMode
ScaleTop
ScaleWidth
0 User
1 Twip
2 Point
3 Pixel
4 Character
5 Inch
6 Millimeter
7 Centimeter
Valor
Valor
Moveable
StartUpPosition
Top
inicial
do
True
False
0 Manual
1 Centralizar no Mestre
2 Centralizar na tela
3 Padro Windows
Width
PROPRIEDADES DO BOTO
As propriedades do boto podem estar categorizadas em: aparncia, comportamento,
diversos, fonte e posio.
Tabela 12: Propriedades do boto na categoria de aparncia.
Propriedade
Descrio
Valor
Appearance
BackColor
Caption
DisabledPicture
DownPicture
MaskColor
Picture
Style
UseMaskColor
True
False
CausesValidation
Default
DragIcon
DragMode
Enabled
OLEDropMode
RightToLeft
TabIndex
TabStop
Visible
True
False
Valor
Name
HelpContextID
Index
MouseIcon
MousePointer
Tag
ToolTipText
WhatsthisHelpI
D
Form (Formulrio) Em Visual Basic, um formulrio considerado como uma janela tipica
de Windows. Pois, nele, que se colocam todos os controlos que fazem parte da caixa de
ferramentas, para se criar uma aplicao. Cada um dos elementos grficos que formam
parte de uma aplicao, conhecido como um tipo de controlo, por exemplo: botes, caixas
de texto, caixas de dilogo, barras de rolagem, menus, grficos, caixas de verificao e
muitos outros elementos so controlos para Visual Basic.
Um formulrio, tambm pode-se considerar como uma espcie de conteiner para os
controlos de uma aplicao.
2
Entre uma rea e outra, encontramos os botes que permitem manipular a rea de
tabulao. As propriedades disponveis para os menus so:
Propriedade
Caption (Ttulo)
Name (Nome)
Index (ndice)
Shortcut (Atalho)
HelpContextID (ID da
Ajuda)
NegotiatePosition
(Posio Negocivel)
Checked (Marcado)
Enabled (Habilitado)
Visible (Visvel)
WindowList (Lista)
Seta para Esquerda
Seta para Direita
Seta para Cima
Descrio
Permite estabelecer um texto de apresentao do menu ou de uma opo
do menu. Similar propriedade Caption dos controlos.
Permite estabelecer um nome para cada opo do menu. Esta propriedade
obrigatria e dever seguir os mesmos padres de nomenclatura dos
objectos. Por meio dessa propriedade, poderemos identificar um menu ou
uma opo do menu dentro do cdigo.
Estabelece o ndice que o mesmo possui caso seja elemento de um array
de objectos.
Permite seleccionar um conjunto de teclas que poder ser utilizado para
aceder uma opo do menu quando o mesmo estiver fechado. As teclas
escolhidas sero apresentadas juntamente com a opo (Caption) no
menu. Somente opes de menus podem ser associadas a teclas.
Permite estabelecer um nmero que identificar um tpico especfico para
a opo do menu em questo dentro do arquivo de ajuda que criamos e
associamos aplicao VB por meio da propriedade de projecto
denominada HelpFile.
Permite especificar quando e como ser negociada (exibida) a barra de
menus de objectos inseridos em outros objectos (como, por exemplo,
aplicaes OLE Server e OLE Client ou at mesmo os ActiveX
Documents).
Utilizado para a opo de menus do tipo checked. Esta opo permite
activar ou desactivar a marca check de uma opo do menu criado.
Permite habilitar ou desabilitar um menu ou opo.
Permite activar ou desactivar a visibilidade de um menu.
Utilizado para MDI Form, permite activar um menu de lista de janelas
disponveis do MDI Form.
Permite mover uma opo mas a esquerda dentro do menu com a
finalidade deste estar um nvel mais alto.
Move uma opo mas a direita com a finalidade que seja uma sub-opo
da opo que se encontra na parte superior. As opes principais devem
estar bem a esquerda e as sub-opes mas a direita, assim
sucessivamente.
Permite mover uma opo para cima.
Como j sabemos como aceder o editor de menus, vamos juntos entender a criao bsica
de barras de menus e suas opes. Mas antes, devemos salientar que existem trs (3) tipos
de menus, a saber: menu drop-down 8 (menu pendente),menu de contexto (menu de
contexto) e menu dinmico (menu dynamic).
Outra caracterstica bastante comum em opes de menus dentro das aplicaes Windows
a tecla de atalho (shortcut). Esse recurso permite que seleccionemos um conjunto de
teclas ou uma tecla de funo e associe-a a uma opo do menu. As teclas de atalho
facilitam a tarefa dos usurios, pois estes podero pression-las para executar uma opo
especfica de um menu sem ter de abri-lo.
Figura 31: Inserindo teclas de atalho.
Valor
vbPopupMenuLeftAlign
vbPopupMenuCenterAlign
vbPopupMenuRightAlign
Descrio
O lado esquerdo do menu Popup est sobre a
coordenada x.
O menu Popup est centrado em x.
O lado direito do menu Popup est sobre a
coordenada x.
Boldcommand Nome de um item do menu que ser colocado a negrito (bold). Por
omisso nenhum item colocado a negrito.
MENU DINMICO
Um menu diz-se dinmico quando possvel retirar-lhe ou acrescentar-lhe opes durante a
execuo da aplicao. Este menu pode ser alterado durante a execuo do programa de
modo a mostrar sempre os ficheiros utilizados recentemente (vide figura 34a).
Para que aplicao funcione da forma que idealizmos, torna-se necessrio criar um Control
Array9 de itens de menu.
CODIFICANDO UM MENU
A atribuio de cdigo s opes do menu equivalente atribuio de cdigo a qualquer
outro objecto em VB. Para aceder janela de edio de cdigo basta fazer um clique sobre
a opo do menu qual se pretende adicionar o cdigo (ao contrrio de outros objectos em
VB, o objecto Menu s possui associado a si um tipo de evento, que o clique).
Figura 36: Inserindo cdigo numa opo do menu.
SUB PROCEDURES
Os Sub Procedures so blocos de cdigo que podem ser executados quando se tornar
necessrio. A razo da existncia dos Sub Procedures que a diviso do cdigo em blocos
As palavras entre parntesis rectos so opcionais. Um Sub Procedure composto por trs
partes:
Cabealho Composto pela palavra Sub, seguido do nome do procedimento e, depois, dos
argumentos. Os argumentos so valores que se pretende passar para dentro do bloco de
cdigo.
Quanto s palavras Private ou Public, se um Sub Procedure for definido como Private,
apenas pode ser chamado de dentro do mdulo onde foi definido ( privado do mdulo). No
caso de ser Public pode ser chamado de qualquer outro mdulo da aplicao ( pblico
aplicao).
Bloco de instrues Quando o procedimento for chamado, as instrues que se
encontram entre o cabealho e a expresso End Sub sero executadas em sequncia,
desde a primeira at ltima.
End Sub Terminador do procedimento.
EVENT PROCEDURES
Este tipo de procedimento est especificamente ligado a um determinado evento e as suas
instrues s so executadas quando o evento ocorre. O programador pode definir Event
Procedures de raiz, mas isso no necessrio. O visual basic j possui associado a cada
form module os cabealhos de todos os procedimentos associados aos eventos que podem
ocorrer sobre o formulrio ou sobre os objectos que nela se encontram.
mdulo
ser
igualmente criado.