A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

A Linguagem Basic VBEsp01.

Apresentações semelhantes


Apresentação em tema: "A Linguagem Basic VBEsp01."— Transcrição da apresentação:

1 A Linguagem Basic VBEsp01

2 Histórico Darthmouth College em 1959
BASIC (Beginners All-Purpose Symbolic Instruction Code) Sub conjunto de FORTRAN Típica de mini computadores Linguagem interpretada 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 VBEsp01

4 Histórico Por diversas razões a linguagem Basic tem sido bastante prestigiada pela Microsoft Em 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 VB1 VB tornou-se uma extensão de Basic 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 Control O VB4 foi lançado em outubro de 1996 O VB5 foi lançado em abril de 1997 Em outubro de 1998 foi lançado VB6. Em 2001 foi lançado o Visual Basic .NET VBEsp01

6 Tipos de Dados Variant tipo genérico Boolean True ou False
Byte 0 até 255 Integer até Long até Single -3,402823E38 até -1,401298E-45 (para valores negativos) 1,401298E-45 até 3,402823E38 (para valores positivos) Double -1, E308 até -4, E-324 (negativos) 4, E-324 até 1, E308 (positivos) VBEsp01

7 Tipos de Dados Currency ,5808 até ,5807 Decimal +/ (sem casas decimais) +/-7, (com casas decimais) Date 1 de Janeiro de 100 até 31 de Dezembro de 9999 String 1 até aproximadamente 2 bilhões de caracteres caracteres se tamanho fixo Type definido pelo utilizador Object referência a objetos VBEsp01

8 Variáveis Iniciando com letra Com até 255 caracteres
Sem brancos, espaços, pontos, +/- Diferentes das palavras reservadas VBEsp01

9 Declarações de variáveis
Dim Com sufixos Integer % Long & Single ! Double # Currency @ String $ VBEsp01

10 Exemplos de variáveis vByte = 2 vBoolean = True vInteger = 333
vLong = 98007 vSingle = vDouble = vCurrency = vDate = #18/09/1977”# vString = “String de amostragem” 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. 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 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 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 VBEsp01

15 Static nomeDaVariavel as tipoDaVariavel
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 invocado Variáveis que devem guardar o seu último valor são variáveis estáticas Só se pode declarar objetos estáticos nos procedimentos e não nos módulos Para tornar um objeto estático a sintaxe é Static nomeDaVariavel as tipoDaVariavel VBEsp01

16 Visibilidade e longevidade de uma variável
Public: visível em todos os módulos e durante toda a execução Private ou Dim: visível dentro do seu módulo e durante toda a execução Dim: visível dentro do seu procedimento e durante a sua execução Static: visível dentro do seu procedimento e durante toda a execução VBEsp01

17 Constantes As constantes são declaradas da forma
Const nomeDaConstante as tipoDaConstante = valorDaConstante VBEsp01

18 Constantes System-defined constants: True; False; Null; Empty; Nothing
Intrinsic constants (bibliotecas do VBA): Const LEFT_BUTTON = 1 Symbolic constants: Const PI = 3,14 VBEsp01

19 Operadores Texto Relacionais & (concatenação) = (igual a)
> (maior que) < (menor que) <> (diferente de) >= (maior ou igual) <= (menor ou igual) Like (padrões de texto) Is (referência de objetos) VBEsp01

20 Precedência de Operadores
Maior precedência ^ exponenciação - negação * , / multiplicação e divisão \ divisão inteira Mod resto da divisão + , - adição e subtração & concatenação = , > , < , <> , >= , <= , Like , Is comparação And , Or , Not , Imp , Xor , Eqv lógica Menor precedência VBEsp01

21 Outros caracteres ‘ ou Rem comentários
: múltiplas instruções na mesma linha _ uma instrução em múltiplas linhas 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 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 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 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 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 VBEsp01

27 Arrays dinâmicos ReDim: redefine os limites de um dado array
Redim 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 VBEsp01

28 Procedimentos Tipos Classificação Procedimentos Funções Da linguagem
De eventos Do usuário 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 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 correspondente Sub Objeto_Evento (arg1, arg2, .. argN) ‘ comandos do procedimento End Sub VBEsp01

31 Exemplo de procedimentos de eventos
Private Sub cmdExecutar_Click() Dim i, j As Single If Text1.Text = "" Then ‘ Caixa de textos 1 vazia i = 0 Else: i = CSng(Text1.Text) ‘Converter para real o conteúdo End If If Text2.Text = "" Then ‘ Caixa de textos 2 vazia j = 0 Else: j = CSng(Text2.Text) ‘Converter para real o conteúdo Text3.Text = i + j End Sub 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 VBEsp01

33 Procedimentos do usuário
Sub Nome_do_Procedimento (arg1, arg2, .. argN) ‘ comandos do procedimento End Sub VBEsp01

34 Exemplo de procedimento do usuário
Sub Calculo (X As Variant) X = X * 5 MsgBox “ O resultado desejado é “ & X End Sub VBEsp01

35 Funções do usuário Function Nome_da_Função (arg1, arg2, .. argN)
‘ comandos da função End Function 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 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 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 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 VBEsp01

40 Edição de rotinas do usuário usando Object Browser
Pressionar F2 ou abrir o menu View e selecionar Object Browser Abrir a janela de código do componente aonde foi inserida a rotina Na ListBox de Classes selecionar o nome do componente aonde foi inserida a rotina Na ListBox de “Member of...” selecionar a rotina 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 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 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 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) ‘comandos End Sub ou na chamada da rotina Objeto_Evento (arg1), (arg2), ..., (argN) VBEsp01

45 Exemplo de passagem por valor
Sub Calculo (ByVal X As Variant) X = X * 5 MsgBox “ O resultado desejado é “ & X End Sub 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 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 VBEsp01

48 Estruturas Condicionais
Tipos If .. End If Select Case End Select 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 VBEsp01

50 Estruturas Condicionais
If .condição Then comandos [ElseIf condiçãox Then] [Else] End If VBEsp01

51 Estruturas Condicionais
Select Case condição [Case expressão1] [comandos] [Case Else] End Select VBEsp01

52 Exemplo do uso de Select
mesi=month(date) Select case mesi Case 1 stringMes="Janeiro" Case 2 stringMes="Fevereiro" Case 3 stringMes="Março" Case 12 stringMes="Dezembro" End Select VBEsp01

53 Repetições Tipos Do While While For VBEsp01

54 Repetições Do [{While | Until} condição] [comandos] [Exit DO] Loop
VBEsp01

55 Repetições While condição [comandos] Wend VBEsp01

56 Exemplo da estrutura While
contador = 0 While menor <= maior menor = menor + terceiro contador = contador + 1 Wend Text3.Text = contador VBEsp01

57 Repetições For contador = valor_inic To valor_final [Step incremento]
[comandos] [Exit For] Next [contador] 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 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 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 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 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 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. VBEsp01

64 Exemplo Option Explicit Sub Insere (ParamArray Argumentos())
Dim x as Variant For Each x In Arguments List1.AddItem x Next End Sub Private Sub btnInsere_Click() Insere “Argumento 1”, “Argumento 2”, _ “Argumento 3” 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 VBEsp01

66 Uso de argumentos com nome
Private Sub Command1_Click() Exibir _ pLugar := vbCenter, pMens:= “Argumentos”, pTamanho: = 12 End Sub Private Sub Exibir (pMens As String, pTamanho As Integer, pPLugar as Integer) Label1.Alignment = pLugar Label1.FontSize = pTamanho Label1.Caption = pMens VBEsp01

67 Projetos Visual Basic 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) 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 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. VBEsp01


Carregar ppt "A Linguagem Basic VBEsp01."

Apresentações semelhantes


Anúncios Google