a linguagem basic
DESCRIPTION
A Linguagem Basic. Histórico. Darthmouth College em 1959 BASIC (Beginners All-Purpose Symbolic Instruction Code) Sub conjunto de FORTRAN Típica de mini computadores Linguagem interpretada. Histórico. Interpretador de pequeno tamanho Crescimento com os micro computadores enorme - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/1.jpg)
VBEsp01 1
A Linguagem Basic
![Page 2: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/2.jpg)
VBEsp01 2
Histórico
Darthmouth College em 1959BASIC (Beginners All-Purpose Symbolic Instruction Code)
Sub conjunto de FORTRAN
Típica de mini computadores
Linguagem interpretada
![Page 3: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/3.jpg)
VBEsp01 3
Histórico
Interpretador de pequeno tamanho
Crescimento com os micro computadores enorme
Primeiro produto comercializado por Bill Gates
Tornou-se a linguagem conhecida pelo maior número de usuários
![Page 4: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/4.jpg)
VBEsp01 4
Histórico
Por diversas razões a linguagem Basic tem sido bastante prestigiada pela MicrosoftEm março de 1988 Alan Cooper desenvolveu o produto “drag-and-drop” Tripod e negociou o conceito deste produto, cognominado Ruby com a Microsoft. Bill Gates comprou a empresa.Em março de 1991 foi lançada a primeira versão do produto Visual Basic, ou VB1VB tornou-se uma extensão de Basic
![Page 5: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/5.jpg)
VBEsp01 5
Histórico
Em novembro de 1992 foi lançado o VB2 com suporte a ODBC. Nessa ocasião foi lançado o Access.Em junho de 1993 foi lançado o VB3 e o revolucionário Data ControlO VB4 foi lançado em outubro de 1996O VB5 foi lançado em abril de 1997Em outubro de 1998 foi lançado VB6.Em 2001 foi lançado o Visual Basic .NET
![Page 6: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/6.jpg)
VBEsp01 6
Tipos de Dados
Variant tipo genéricoBoolean True ou FalseByte 0 até 255Integer -32.768 até 32.767Long -2.147.483.648 até 2.147.483.647Single -3,402823E38 até -1,401298E-45 (para valores negativos) 1,401298E-45 até 3,402823E38 (para valores positivos)Double
-1,79769313486232E308 até -4,94065645841247E-324 (negativos)
4,94065645841247E-324 até 1,79769313486232E308 (positivos)
![Page 7: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/7.jpg)
VBEsp01 7
Tipos de Dados
Currency -922.337.203.685.477,5808 até 922.337.203.685.477,5807Decimal
+/-79.228.162.514.264.337.593.543.950.335 (sem casas decimais)
+/-7,9228162514264337593543950335 (com casas decimais)Date 1 de Janeiro de 100 até 31 de Dezembro de 9999String 1 até aproximadamente 2 bilhões de caracteres 65.400 caracteres se tamanho fixoType definido pelo utilizador
Object referência a objetos
![Page 8: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/8.jpg)
VBEsp01 8
Variáveis
Iniciando com letra
Com até 255 caracteres
Sem brancos, espaços, pontos, +/-
Diferentes das palavras reservadas
![Page 9: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/9.jpg)
VBEsp01 9
Declarações de variáveis
DimCom sufixos Integer % Long & Single ! Double # Currency @ String $
![Page 10: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/10.jpg)
VBEsp01 10
Exemplos de variáveis
vByte = 2vBoolean = TruevInteger = 333vLong = 98007vSingle = 3.141592vDouble = 3.1492574567vCurrency = 426.78vDate = #18/09/1977”#vString = “String de amostragem”
![Page 11: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/11.jpg)
VBEsp01 11
O tipo de dados Variant
O tipo de dados Variant é o tipo Default e pode armazenar qualquer tipo de dados, reajustando-se dinamicamente ao seu conteúdo.
![Page 12: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/12.jpg)
VBEsp01 12
Declaração de Variáveis
Dim nomeUm as Integer
Dim inteiroUm as Integer
Dim longoDois as Long
Dim singleTres as Single
Dim duploUm as Double
Dim quantiaUm as Currency
Dim textoUm as String
![Page 13: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/13.jpg)
VBEsp01 13
Visibilidade das variáveis
Declaradas em procedimentos ou funções tem visibilidade local
Declaradas na área de declarações de módulos tem visibilidade dentro do módulo
![Page 14: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/14.jpg)
VBEsp01 14
Visibilidade Pública ou Global
Dados que devam ser acessados por diversos procedimentos devem ser públicos.
Para tornar um objeto público a sintaxe é
Public nomeDaVariavel as tipoDaVariavel
![Page 15: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/15.jpg)
VBEsp01 15
Variáveis Estáticas
Variáveis com visibilidade local são dinâmicas.O valor das variáveis dinâmicas é inicializado quando o procedimento for invocadoVariáveis que devem guardar o seu último valor são variáveis estáticasSó se pode declarar objetos estáticos nos procedimentos e não nos módulosPara tornar um objeto estático a sintaxe é
Static nomeDaVariavel as tipoDaVariavel
![Page 16: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/16.jpg)
VBEsp01 16
Visibilidade e longevidade de uma variável
Public: visível em todos os módulos e durante toda a execuçãoPrivate ou Dim: visível dentro do seu módulo e durante toda a execuçãoDim: visível dentro do seu procedimento e durante a sua execuçãoStatic: visível dentro do seu procedimento e durante toda a execução
![Page 17: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/17.jpg)
VBEsp01 17
Constantes
As constantes são declaradas da forma
Const nomeDaConstante as tipoDaConstante = valorDaConstante
![Page 18: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/18.jpg)
VBEsp01 18
Constantes
System-defined constants: True; False; Null; Empty; NothingIntrinsic constants (bibliotecas do VBA): Const LEFT_BUTTON = 1Symbolic constants: Const PI = 3,14
![Page 19: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/19.jpg)
VBEsp01 19
Operadores
Texto & (concatenação)
Relacionais = (igual a) > (maior que) < (menor que) <> (diferente de) >= (maior ou igual) <= (menor ou igual) Like (padrões de texto) Is (referência de
objetos)
![Page 20: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/20.jpg)
VBEsp01 20
Precedência de Operadores
Maior precedência^ exponenciação- negação* , / multiplicação e divisão\ divisão inteiraMod resto da divisão+ , - adição e subtração& concatenação= , > , < , <> , >= , <= , Like , Is comparaçãoAnd , Or , Not , Imp , Xor , Eqv lógica
Menor precedência
![Page 21: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/21.jpg)
VBEsp01 21
Outros caracteres
‘ ou Rem comentários: múltiplas instruções na
mesma linha_ uma instrução em
múltiplas linhas
![Page 22: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/22.jpg)
VBEsp01 22
Arrays
Arrays são agregados de valores homogêneos
A linguagem VB possui arrays fixos e dinâmicos
Arrays fixos tem seu número de elementos determinado na declaração
Arrays dinâmicos
![Page 23: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/23.jpg)
VBEsp01 23
Declaração de Arrays
Dim/Public/Private nomeDoArray (númeroDeElementos) [sufixo] As tipoDoArray
Dim Valores(500) as Integer
‘ Array com 500 elementos inteiros visível localmente
Public Valores(500) as Integer
‘ Array com 500 elementos inteiros visível globalmente
![Page 24: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/24.jpg)
VBEsp01 24
Declaração de Arrays
Dim Alfa (200) ‘ Array com 200 elementos tipo Variant visível localmente
Public Alfa (200) ‘ Array com 200 elementos tipo Variant global
Dim Dias (7) As String ‘ Array com 7 elementos tipo String visível localmente
Public Dias (7) As String ‘ Array com 7 elementos tipo String global
![Page 25: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/25.jpg)
VBEsp01 25
Declaração de Arrays
Por default o primeiro elemento de um array tem índice 0
Dim Valores (10 to 40) as Integer
Dim Alfa (100 to 150)
Public Dias (1 to 7) As String
![Page 26: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/26.jpg)
VBEsp01 26
Acesso a elementos de Arrays
Dias(1) = “Domingo”
Alfa(1) = “Rio de Janeiro”
Alfa(15) = #12/12/1812#
Alfa(180) = 512
Valores(12) = 412
![Page 27: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/27.jpg)
VBEsp01 27
Arrays dinâmicos
ReDim: redefine os limites de um dado arrayRedim Preserve: redefine os limites de um
dado array e preserva os valores nele existentes (é aplicável apenas quando se redefine a última dimensão)
LBound: retorna o limite inferior de um dado array
UBound: retorna o limite superior de um dado array
![Page 28: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/28.jpg)
VBEsp01 28
Procedimentos
Tipos Procedimentos Funções
Classificação Da linguagem De eventos Do usuário
![Page 29: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/29.jpg)
VBEsp01 29
Definições
Procedimentos e funções da linguagem são aqueles fornecidos pelo fornecedor do produto VB (Microsoft)
Procedimentos e funções de eventos são ações em resposta a eventos da interface
Procedimentos e funções do usuário são a parte do algoritmo implementada pelo usuário
![Page 30: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/30.jpg)
VBEsp01 30
Procedimentos de eventos
Procedimentos de eventos são iniciados aplicando um duplo clique no objeto correspondente, o que abre a janela de código correspondenteSub Objeto_Evento (arg1, arg2, .. argN)
‘ comandos do procedimento
End Sub
![Page 31: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/31.jpg)
VBEsp01 31
Exemplo de procedimentos de eventos
Private Sub cmdExecutar_Click()Dim i, j As SingleIf Text1.Text = "" Then ‘ Caixa de textos 1 vazia i = 0 Else: i = CSng(Text1.Text) ‘Converter para real o conteúdoEnd IfIf Text2.Text = "" Then ‘ Caixa de textos 2 vazia j = 0 Else: j = CSng(Text2.Text) ‘Converter para real o conteúdo End IfText3.Text = i + jEnd Sub
![Page 32: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/32.jpg)
VBEsp01 32
Procedimentos do usuário
Procedimentos e funções do usuário são criados da forma: Abrir a janela de códigos do módulo Dar um clique no menu Tools Selecionar a opção Add Procedure Efetuar as escolhas de tipo, escopo e tipo de
variáveis Dar um clique no botão OK Digitar o código
![Page 33: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/33.jpg)
VBEsp01 33
Procedimentos do usuário
Sub Nome_do_Procedimento (arg1, arg2, .. argN)
‘ comandos do procedimento
End Sub
![Page 34: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/34.jpg)
VBEsp01 34
Exemplo de procedimento do usuário
Sub Calculo (X As Variant)
X = X * 5
MsgBox “ O resultado desejado é “ & X
End Sub
![Page 35: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/35.jpg)
VBEsp01 35
Funções do usuário
Function Nome_da_Função (arg1, arg2, .. argN)
‘ comandos da função
End Function
![Page 36: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/36.jpg)
VBEsp01 36
Exemplo de Função do usuário
Private Function maximo(i As Double, j As Double)
If i > j Then
maximo = i
Else
maximo = j
End If
End Function
![Page 37: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/37.jpg)
VBEsp01 37
Edição de rotinas do usuário
A visualização e edição das rotinas (procedimentos e funções) do usuário podem ser feitas usando:
– Os ComboBoxes da janela de Códigos– As chamadas da rotina– O utilitário ObjectBrowser
![Page 38: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/38.jpg)
VBEsp01 38
Edição de rotinas do usuário usando ComboBoxes
Abrir a janela de código do componente aonde foi inserida a rotina
No ComboBox de objetos selecionar General
Abrir a lista de procedimentos
Selecionar o módulo desejado
![Page 39: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/39.jpg)
VBEsp01 39
Edição de rotinas do usuário usando as chamadas
Abrir a janela de código do componente aonde foi inserida a rotina
Posicionar o cursor sobre uma chamada à rotina
Pressionar as teclas SHIFT+F2
![Page 40: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/40.jpg)
VBEsp01 40
Edição de rotinas do usuário usando Object Browser
Pressionar F2 ou abrir o menu View e selecionar Object BrowserAbrir a janela de código do componente aonde foi inserida a rotinaNa ListBox de Classes selecionar o nome do componente aonde foi inserida a rotinaNa ListBox de “Member of...” selecionar a rotina
![Page 41: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/41.jpg)
VBEsp01 41
Declaração de parâmetros
Os tipos de parâmetros são declarados na definição das rotinas
Sub Objeto_Evento (arg1 As Tipo_1, arg2 As Tipo_2, ..., argN As Tipo_N)
‘comandos
End Sub
![Page 42: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/42.jpg)
VBEsp01 42
Exemplo de declaração de parâmetros
Private Sub Text1_KeyPress(KeyAscii As Integer)
Dim Tecla as String
Tecla$ = Chr(KeyAscii)
If Tecla >= “0” And Tecla$ <= “9” Then
Beep
KeyAscii = 0
End If
End Sub
![Page 43: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/43.jpg)
VBEsp01 43
Declaração de parâmetros
Os argumentos podem ser passados por referência ou por valor
O default é a passagem por referência
![Page 44: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/44.jpg)
VBEsp01 44
Declaração de parâmetros
Quando não se desejar que a rotina altere os dados do procedimento chamador deve-se usar a passagem por valor que pode ser feita:Na definição da rotina
Sub Objeto_Evento (ByVal arg1 As Tipo_1, ByVal arg2 As Tipo_2, ..., ByVal argN As Tipo_N)
‘comandosEnd Sub
ou na chamada da rotinaObjeto_Evento (arg1), (arg2), ..., (argN)
![Page 45: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/45.jpg)
VBEsp01 45
Exemplo de passagem por valor
Sub Calculo (ByVal X As Variant)
X = X * 5
MsgBox “ O resultado desejado é “ & X
End Sub
![Page 46: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/46.jpg)
VBEsp01 46
Argumentos Opcionais
Com a declaração Optional especificam-se argumentos que o usuário pode utilizar ou não
Quando o usuário não especificar argumentos opcionais serão utilizados argumentos default
Quando se usa a declaração Optional para uma lista de parâmetros, todos os parâmetros subsequentes deverão também ser opcionais
![Page 47: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/47.jpg)
VBEsp01 47
Visibilidade de Rotinas
Tal como as variáveis os procedimentos e as funções podem ser dos tipos Public Private Static
O default para as rotinas é Public
Procedimentos de eventos são privados
![Page 48: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/48.jpg)
VBEsp01 48
Estruturas Condicionais
Tipos
If .. End If
Select Case End Select
![Page 49: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/49.jpg)
VBEsp01 49
Exemplo do uso de If'Testa o número digitado If Text1.Text = "0" Or Text1.Text = "" Then 'Se for 0 ou vazio End 'Finaliza a aplicação ElseIf Text1.Text = "1" Then 'Se for 1 MsgBox "Número 1 foi digitado" ElseIf Text1.Text = "10" Then 'Se for 10 MsgBox "Número 10 foi digitado" Else 'Se não for 0,1, 10 ou "" (vazio) If IsNumeric(Text1.Text) Then 'Se o conteúdo for numérico MsgBox "Número Inválido" ElseIf VarType(Text1.Text) = vbString Then MsgBox "Não são permitidas as entradas de Strings" Else MsgBox "Conteúdo Inválido" End If End If
![Page 50: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/50.jpg)
VBEsp01 50
Estruturas Condicionais
If .condição Then
comandos
[ElseIf condiçãox Then]
comandos
[Else]
comandos
End If
![Page 51: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/51.jpg)
VBEsp01 51
Estruturas Condicionais
Select Case condição
[Case expressão1]
[comandos]
[Case Else]
[comandos]
End Select
![Page 52: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/52.jpg)
VBEsp01 52
Exemplo do uso de Selectmesi=month(date)Select case mesi Case 1 stringMes="Janeiro" Case 2 stringMes="Fevereiro" Case 3 stringMes="Março"
Case 12 stringMes="Dezembro" End Select
![Page 53: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/53.jpg)
VBEsp01 53
Repetições
Tipos
Do While
While
For
![Page 54: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/54.jpg)
VBEsp01 54
Repetições
Do [{While | Until} condição]
[comandos]
[Exit DO]
[comandos]
Loop
![Page 55: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/55.jpg)
VBEsp01 55
Repetições
While condição
[comandos]
Wend
![Page 56: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/56.jpg)
VBEsp01 56
Exemplo da estrutura While
contador = 0
While menor <= maior
menor = menor + terceiro
contador = contador + 1
Wend
Text3.Text = contador
![Page 57: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/57.jpg)
VBEsp01 57
Repetições
For contador = valor_inic To valor_final [Step incremento]
[comandos]
[Exit For]
[comandos]
Next [contador]
![Page 58: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/58.jpg)
VBEsp01 58
Exemplo do uso de For .. Next
Dim Contador% 'Variável contadora
‘Repete iniciando contador% com 0
'até que o contador seja igual à 2000
For Contador% = 0 To 2000
'Adiciona um novo Ítem no List Box
List1.AddItem "Ítem " & Str(Contador%)
Next
![Page 59: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/59.jpg)
VBEsp01 59
Estrutura Width
Esta estrutura simplifica a escrita de código permitindo que os objetos apareçam implícitos em suas propriedades.
Sintaxe
Width objeto
comandos
End Width
![Page 60: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/60.jpg)
VBEsp01 60
Exemplo da estrutura Width
Private Sub cmdTestar_Click()
With Label1
.Caption = “Veja o teste”
.FontBold = True
.ForeColor = vbRed
.AutoSize = True
End Width
End Sub
![Page 61: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/61.jpg)
VBEsp01 61
Estrutura For Each
Esta estrutura permite a execução de uma seqüência de comandos para cada um dos elementos de um array ou conjunto.Sintaxe
For Each elemento In grupo [comandos] [Exit For] Next
![Page 62: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/62.jpg)
VBEsp01 62
Exemplo de For ... Each
Dim qry As QueryDef
' Processar cada consulta armazenada
For Each qry In DB.QueryDefs
QryList.AddItem qry.Name
Next
![Page 63: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/63.jpg)
VBEsp01 63
Cláusula ParamArray
Esta cláusula permite que um array seja definido como um parâmetro de procedimento.
A chamada do procedimento pode ser feita passando quantos parâmetros forem necessários.
![Page 64: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/64.jpg)
VBEsp01 64
ExemploOption ExplicitSub Insere (ParamArray Argumentos()) Dim x as Variant For Each x In Arguments List1.AddItem x NextEnd SubPrivate Sub btnInsere_Click() Insere “Argumento 1”, “Argumento 2”, _ “Argumento 3”End Sub
![Page 65: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/65.jpg)
VBEsp01 65
Argumentos Nomeados
Utilizando-se argumentos com nome pode-se chamar um procedimento ou função passando os argumentos em qualquer ordem.
Dentro da chamada deve-se usar o nome do parâmetro com atribuição de valor pelos símbolos “:=“.
Exemplo
![Page 66: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/66.jpg)
VBEsp01 66
Uso de argumentos com nome
Private Sub Command1_Click() Exibir _ pLugar := vbCenter, pMens:= “Argumentos”, pTamanho: = 12End SubPrivate Sub Exibir (pMens As String, pTamanho As Integer,
pPLugar as Integer) Label1.Alignment = pLugar Label1.FontSize = pTamanho Label1.Caption = pMensEnd Sub
![Page 67: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/67.jpg)
VBEsp01 67
Projetos Visual Basic
![Page 68: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/68.jpg)
VBEsp01 68
Arquivos Componentes de um Projeto
De Projeto (.vdp)
De Formulários (.frm)
De Módulos (.bas)
De Controles ActiveX (.ocx)
De Controles do usuário (.ctl)
De páginas de propriedades (.pag)
De recursos (.res_)
Externos (.exe, .dll e outros)
![Page 69: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/69.jpg)
VBEsp01 69
Componentes de um Projeto
Arquivos de Projeto contém um índice dos componentes do Projeto
Documentos ActiveX são semelhantes a formulários visualizados por browsers
Controles do usuário são controles ActiveX criados pelos usuários
![Page 70: A Linguagem Basic](https://reader036.vdocuments.mx/reader036/viewer/2022081513/56813fed550346895daaf092/html5/thumbnails/70.jpg)
VBEsp01 70
Componentes de um Projeto
Páginas de propriedades são arquivos para gerar interfaces de manipulação dos controles ActiveX gerados pelo usuário
Arquivos de Recursos armazenam dados referentes a textos, menus, mapas de bits, sons, etc.