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

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

VBEsp011 A Linguagem Basic. VBEsp012 Histórico Darthmouth College em 1959 BASIC (Beginners All-Purpose Symbolic Instruction Code) Sub conjunto de FORTRAN.

Apresentações semelhantes


Apresentação em tema: "VBEsp011 A Linguagem Basic. VBEsp012 Histórico Darthmouth College em 1959 BASIC (Beginners All-Purpose Symbolic Instruction Code) Sub conjunto de FORTRAN."— Transcrição da apresentação:

1 VBEsp011 A Linguagem Basic

2 VBEsp012 Histórico Darthmouth College em 1959 BASIC (Beginners All-Purpose Symbolic Instruction Code) Sub conjunto de FORTRAN Típica de mini computadores Linguagem interpretada

3 VBEsp013 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

4 VBEsp014 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

5 VBEsp015 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

6 VBEsp016 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)

7 VBEsp017 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

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

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

10 VBEsp0110 Exemplos de variáveis vByte = 2 vBoolean = True vInteger = 333 vLong = vSingle = vDouble = vCurrency = vDate = #18/09/1977# vString = String de amostragem

11 VBEsp0111 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.

12 VBEsp0112 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

13 VBEsp0113 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

14 VBEsp0114 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

15 VBEsp0115 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

16 VBEsp0116 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

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

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

19 VBEsp0119 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)

20 VBEsp0120 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

21 VBEsp0121 Outros caracteres ou Rem comentários : múltiplas instruções na mesma linha _ uma instrução em múltiplas linhas

22 VBEsp0122 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

23 VBEsp0123 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

24 VBEsp0124 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

25 VBEsp0125 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

26 VBEsp0126 Acesso a elementos de Arrays Dias(1) = Domingo Alfa(1) = Rio de Janeiro Alfa(15) = #12/12/1812# Alfa(180) = 512 Valores(12) = 412

27 VBEsp0127 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

28 VBEsp0128 Procedimentos Tipos Procedimentos Funções Classificação Da linguagem De eventos Do usuário

29 VBEsp0129 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

30 VBEsp0130 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

31 VBEsp0131 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 End If Text3.Text = i + j End Sub

32 VBEsp0132 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

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

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

35 VBEsp0135 Funções do usuário Function Nome_da_Função (arg1, arg2,.. argN) comandos da função End Function

36 VBEsp0136 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

37 VBEsp0137 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

38 VBEsp0138 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

39 VBEsp0139 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

40 VBEsp0140 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

41 VBEsp0141 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

42 VBEsp0142 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

43 VBEsp0143 Declaração de parâmetros Os argumentos podem ser passados por referência ou por valor O default é a passagem por referência

44 VBEsp0144 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)

45 VBEsp0145 Exemplo de passagem por valor Sub Calculo (ByVal X As Variant) X = X * 5 MsgBox O resultado desejado é & X End Sub

46 VBEsp0146 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

47 VBEsp0147 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

48 VBEsp0148 Estruturas Condicionais Tipos If.. End If Select Case End Select

49 VBEsp0149 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

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

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

52 VBEsp0152 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

53 VBEsp0153 Repetições Tipos Do While While For

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

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

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

57 VBEsp0157 Repetições For contador = valor_inic To valor_final [Step incremento] [comandos] [Exit For] [comandos] Next [contador]

58 VBEsp0158 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

59 VBEsp0159 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

60 VBEsp0160 Exemplo da estrutura Width Private Sub cmdTestar_Click() With Label1.Caption = Veja o teste.FontBold = True.ForeColor = vbRed.AutoSize = True End Width End Sub

61 VBEsp0161 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

62 VBEsp0162 Exemplo de For... Each Dim qry As QueryDef ' Processar cada consulta armazenada For Each qry In DB.QueryDefs QryList.AddItem qry.Name Next

63 VBEsp0163 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.

64 VBEsp0164 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 End Sub

65 VBEsp0165 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

66 VBEsp0166 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 End Sub

67 VBEsp0167 Projetos Visual Basic

68 VBEsp0168 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)

69 VBEsp0169 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

70 VBEsp0170 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.


Carregar ppt "VBEsp011 A Linguagem Basic. VBEsp012 Histórico Darthmouth College em 1959 BASIC (Beginners All-Purpose Symbolic Instruction Code) Sub conjunto de FORTRAN."

Apresentações semelhantes


Anúncios Google