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

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

UTILIZAÇÃO DA LINGUAGEM MS-VISUAL BASIC .NET

Apresentações semelhantes


Apresentação em tema: "UTILIZAÇÃO DA LINGUAGEM MS-VISUAL BASIC .NET"— Transcrição da apresentação:

1 UTILIZAÇÃO DA LINGUAGEM MS-VISUAL BASIC .NET
Objetivo: apresentar os principais recursos da linguagem “Visual Basic” necessários à criação de macros para programação CN O QUE SERÁ ABORDADO: Criação de um programa no MS-Windows Formulário principal Montagem do leiaute com controles de texto e rótulos para entrada e saída de dados Tipos e declarações de variáveis Operadores Atribuição de valores Manipulação de strings Iterações Condicionais Arquivos (leitura e gravação) Controles para leitura e gravação de dados em arquivos Funções e sub-rotinas Gráficos

2 PROGRAMAÇÃO EM MS VISUAL BASIC
Baseada em elementos gráficos (controles) e, atualmente, com recursos para programação orientada por objetos Possibilita o desenvolvimento de aplicativos para Windows com baixo custo e tempo Versões disponíveis: VB5; VB6; .Net2003; .Net2005; .Net2008 e .Net2010 Express (gratuita)

3 INICIANDO UM PROJETO EM VISUAL BASIC. .NET
Após iniciar o Visual Basic Express, utilize o menu “TOOLS - OPTIONS” e marque a opção “save new projects when created”, tal como mostrado acima. Isto possibilitará a escolha do caminho (pasta) e nome do projeto.

4 Começando um projeto... A versão .Net2010 do Visual Basic possibilita, além de aplicativos baseados em formulários, a criação versões do tipo console, biblioteca de classes e as WPF (Microsoft Windows Presentation Foundation ) Selecione a opção “windows form application” Crie uma pasta específica para armazenar o projeto. Dê um nome para o mesmo e acione o botão “OK” . Evite manter o nome genérico para o projeto, tal como “windowsapplication1”.

5 Um formulário funciona como um pano de fundo para inserção dos controles que serão visíveis em tempo de execução. Após acionar o botão “OK” aparece (automaticamente) um formulário vazio; o “Solution Explorer” ; o “toolbox” ; a”lista de propriedades”;...

6 Utilizando os controles gráficos disponíveis, faça o leiaute do projeto. Caso necessário adicione um novo formulário. botões caixa de seleção seleção exclusiva Para adicionar um controle ao formulário Arraste-o e solte-o no local desejado ou execute um “duplo click” sobre ele. caixas de texto rótulos enumerador barra de rolagem caixas de lista

7 Tipos e declaração de variáveis
Variável é um local reservado na memória RAM para armazenar dados de entrada e resultados do processamento. O Visual Basic suporta e exige a declaração de diferentes tipos de variáveis!! Variáveis simples TIPO SIGNIFICADO Abrangência TAMANHO OCUPADO (bytes) Chr Armazena um caractere de texto Um caractere 2 String Armazena textos extensos Até dois bilhões de caracteres por caractere Boolean Booleano Verdadeiro ou falso Date Data De 01/01/100 até 31/12/9999 8 Byte Armazena inteiros positivos 0 a 255 1 Short Armazena números inteiros em um pequeno intervalo a 32767

8 Variáveis simples (continuação)
TIPO SIGNIFICADO Abrangência TAMANHO OCUPADO (bytes) Integer Números inteiros em um intervalo médio a 4 Long Números inteiros em um intervalo grande a 8 Single “Ponto flutuante” com precisão simples -3, x 1038 a -1, x 10-45 para números negativos e 1, x 10-45 3, x 1038 para positivos Double “Ponto flutuante” com precisão dupla Armazena duas vezes mais dígitos significativos que o single (15 casas decimais)

9 Declaração das variáveis
As variáveis podem ser declaradas para uso local ou geral. A declaração local significa que elas valerão durante um evento,execução de uma função ou procedimento (procedure). Para uso geral elas terão duração equivalente ao tempo de execução do aplicativo (programa). Exemplos. Dim var1 as integer – declaração (criação) de uma variável de nome “var1” do tipo inteiro para uso local Public var2 as string - declaração de uma variável de nome “var2” do tipo texto para uso geral

10 ARRAYS Um array é uma alternativa para criação de um conjunto de variáveis do mesmo tipo. As variáveis são arranjadas e indexadas (enumeradas) em uma ou mais dimensões. SINTAXE: Dim arrt1D(I) As Integer - unidimensional Dim arrt2D(I, J) As Single – bidimensional Dim arrt3D(I, J, K) As Double - tridimensional Dim arr() As String – declaração dinâmica arr, arrt1D, arrt2D e arrt3D são os nomes dos arrays. I,J,K são os indexadores. O tamanho do array (quantidade de variáveis simples) é dado pelo indexador O primeiro item do array é sempre 0 (zero)

11 EXEMPLOS (declarações e inicializações)
Dim arr1D(5) as integer Dim arr2D(2,2) as single Dim arr3D(2,2,3) as double arr1D (0) = 87 arr1D(3) = 48 arr1D(4) = 12345 arr2D(0,0) = 12,456 arr3D(0,1,2) = 90,

12 VARIÁVEIS ESTRUTURADAS
São utilizadas para a criação de um tipo especial (personalizado) de variável. Um variável estruturada pode conter uma ou mais variáveis simples de tipos diferentes. SINTAXE: Structure name variabledeclarations End Structure Name: sequencia alfa-numérica Variabledeclarations: uso,nome e tipo das variáveis. Pelo menos uma variável tem que ser declarada. Obs.: uma variável estruturada só pode ser criada em um módulo ou classe.

13 EXEMPLO Dentro de um módulo: Structure varestr Dim a As Integer Dim b As Integer End Structure Public var1() As varestr – é um array dinâmico de uso público Dentro de um evento (ou procedimento) Redim var1(12) – redimensionamento do array dinâmico p/ tamanho 13 var1(3).a = 78 var1(3).b = 65 var1(7).b = 567

14 OPERADORES ARITMÉTICOS: OPERADOR SIGNIFICADO = Atribuição de valor +
Soma - Subtração * Multiplicação / Divisão \ Divide, mas só retorna a parte inteira Mod Retorna o resto de uma divisão ^ Exponenciação & Associa duas strings += Soma e atribui -= Subtrai e atribui *= Multiplica e atribui /= Divide e atribui

15 SIGNIFICADO – comparação de dois valores booleanos (true ou false)
OPERADORES COMPARAÇÃO: OPERADOR SIGNIFICADO > Maior que < Menor que = Igual <> Diferente >= Maior ou igual <= Menor ou igual LÓGICOS OPERADOR SIGNIFICADO – comparação de dois valores booleanos (true ou false) AND Retorna verdadeiro (true) se os dois valores forem verdadeiros. Retorna falso (false) caso contrário. OR Retorna verdadeiro (true) se pelo menos um dos valores for verdadeiro (true). Retorna falso (false) caso contrário. XOR (OR exclusivo) Retorna verdadeiro um dos valores for verdadeiro e ou outro for falso. Retorna falso em qualquer outra condição. NOT (negação) Retorna o oposto do valor

16 ATRIBUINDO VALORES ÀS VARIÁVEIS
De um modo geral as variáveis recebem valores durante a execução do programa (tempo de execução), resultantes de processamentos ou entradas (valores informados pelos usuários). Entretanto, em alguns casos elas podem receber valores (inicialização) na fase de projeto (tempo de projeto). EXEMPLO DE INICIALIZAÇÃO: Dim var1 as integer = inicializa com zero (0) juntamente com a declaração Ou.... Dim var1 as integer Var1 = inicializa com zero (0) em outra linha do programa

17 ALTERAÇÃO DE VALORES DURANTE A EXECUÇÃO
Dim X,Y,Z as integer X = textbox1.text -- armazena o valor digitado pelo usuário no controle textbox1 {12} Y = textbox2.text -- armazena o valor digitado pelo usuário no controle textbox2 {25} X ^=2 --eleva X ao quadrado {X=144} Y *=10 – multiplica Y por 10 {Y=250} Z = X + Y -- armazena o resultado da soma {Z = 394} Textbox3.text = Z – transfere o valor de Z para o controle textbox3 {394}

18 FORMATANDO NÚMEROS... Os números podem ser convertidos de um tipo para outro por meio de funções de conversão. Exemplos: Cint(num) – converte num, de um tipo single por exemplo, para inteiro. Cint arredonda o número para o inteiro superior caso a parte fracionária seja maior que 0,5 e para o inteiro inferior caso contrário. Outras funções de conversão: CLng – converte para long CSng – converte para single CDbl – converte para double Cbool – converte para boolean Cbyte – converte para byte

19 FORMATANDO NÚMEROS... Com a utilização da biblioteca matemática (classe math) outros métodos podem ser utilizados para o tratamento de números: Valor absoluto: math.abs(num) retorna o módulo (valor positivo) do número. Inteiro superior: math.ceiling(num) retorna o inteiro superior, independente do valor da mantissa. Inteiro inferior: math.floor(num) retorna o inteiro superior, independente do valor da mantissa.

20 MANIPULAÇÃO DE STRINGS (FILTROS)
Strings são sequencias de caracteres alfanuméricos (textos) e, geralmente, são manipuladas durante aplicação de filtros sobre arquivos ou textos digitados pelo usuário. Os filtros podem demandar, entre outras, as seguintes tarefas: * união * subtração *substituição e remoção * inserção *separação *busca *formatação *comparação O Visual Basic oferece duas alternativas para essa manipulação: funções e métodos. As funções principais são: &,len, mid, instr, StrComp,trim,Ltrim, Rtrim, Format, Ucase e Lcase. Os métodos são herdados da classe “string” e os mais importantes são: Length, Split, Substring, Compare, IndexOf, LastIndexOf, ToLower, ToUpper, Format,

21 União de strings Finalidade: converter duas ou mais strings em uma. Sintaxe: strA = strB & strC & strD &.... O operador “&” – ampersand funciona como operador de soma. Exemplos: Dim strA,strB,strC as string strB= “máquina” strC = “ferramenta” strA = strB & strC ‘máquinaferramenta strA = strB & “ “ & strC ‘máquina ferramenta strA = strB & “-” & strC ‘máquina-ferramenta

22 Subtração de strings Finalidade: subtrair parte de uma string, convertendo-a em outra. Sintaxe 1: strA = mid(strB, start, length) A função mid retorna uma string (sequencia de caracteres) de tamanho definido pelo argumento length dentro da string (strB) iniciando na posição definida pelo argumento start. Sintaxe 2: strA = strB.substring (start, length) O método substring (disponível na classe string) retorna uma string (sequencia de caracteres) de tamanho definido pelo argumento length dentro da string (strB) iniciando na posição definida pelo argumento start.

23 Exemplos: Dim strA, strB As String strB = "máquina" strA = Mid(strB, 1, 3) 'máq strA = strB.Substring(1, 4) 'áqui strA = strB.Substring(2, 5) 'quina ‘observe que na função Mid o enumerador começa em 1. No método substring ele começa em zero. Uma mensagem de erro (veja figura abaixo) aparecerá caso o comprimento( length)ou o início (start) excedam o tamanho da string.

24 Remoção ou Substituição de parte da strings
Finalidade: remover um ou mais caracteres de uma string ou substituir um ou mais caracteres Sintaxes: strA .remove (start, length) ‘remoção strA.replace (strB, strC) ‘substituição Exemplos: Dim strA,strB,strC as string strB= “máquina operatriz” strC = “ferramenta” strA = strB.remove(7,10)‘máquina strA = strB.replace (“operatriz”, strC )‘máquina ferramenta

25 Inserção de caracteres (ou string) em outra string
Finalidade: inserir um ou mais caracteres em uma string já existente Sintaxe: strA.insert (start, srtB) Exemplos: Dim strA,strB as string strB= “mána ferramenta” strA = strB.insert(2,”qui”)‘máquina

26 Separação de uma string em duas ou mais
Finalidade: separar uma string em posições conhecidas. Um recurso essencial para construção de filtros. Sintaxe: strA.split (srtB) ‘strB deve funcionar como um marcador (caractere utilizado como separador) conhecido. Exemplos: Dim strA(3) as string‘array Dim strB as string ‘string e separador Dim strC as char ‘separador strB= “torno,fresadora,retificadora,plaina” strC = “,” strA = strB.split(strC )‘strA(0) = torno ::: strA(1) = fresadora :::: strA(2) ‘= retificadora e strA(3) = plaina

27 Busca por caracteres em uma string
Finalidade: encontrar a posição (número inteiro) de um dado caractere dentro de uma string. Isto é útil para aplicação dos métodos: insert, remove e substring. Sintaxes: Int = strA.indexof(srtB) ‘retorna um inteiro com a primeira ocorrência do caractere armazenado em srtB Int = strA.indexof(start, srtB) ‘retorna um inteiro com a primeira ocorrência do caractere armazenado ‘em srtB, a partir ‘da posição definida em start Int = Instr(strA, strB) ‘retorna um inteiro contendo o ponto de início da ocorrência de strB dentro de strA Int = strA.lastindexof(strB) ‘‘retorna um inteiro com a última ocorrência do caractere armazenado em ‘srtB

28 Exemplos: Dim strA, strB as string Dim id as integer strA = “programação cnc” strB = “cnc” Id = strA.indexof(“a”) ‘retorna 5 Id = strA.indexof(“a”,6) ‘retorna 7 Id = strA.lastindexof(“o”) ‘retorna 10 Id = strA.indexof(“cnc” ‘retorna 12 Id = instr(strA, strB) ‘ retorna 13 ‘o valor é diferente do anterior, pois nas ‘funções o enumerador começa com 1

29 Formatação de strings Finalidade: converter um dado valor em uma string com um formato específico (personalizado) Sintaxes: StrA= string.format(modelo,vlr) ‘ retorna o valor passado em vlr formatado de acordo com modelo. StrA = string.format(local, modelo,vlr) ‘ retorna o valor passado em vlr formatado de acordo com modelo e o ‘padrão regional (ou país) definido em local. StrA = format(vlr, modelo) ‘ retorna o valor passado em vlr formatado de acordo com modelo. StrA = vlr.tostring( modelo) ‘ retorna o valor de vlr formatado de acordo com modelo. Format pode ser utilizado como um método da classe string ou uma função (própria do Visual Basic). O método tostring está disponível para as variáveis de todos os tipos.

30 Exemplos: Dim strA As String
Dim vlr1 As Double = Math.E ‘ NEPERIANO: 2, Dim vlr2 As Integer = 100 strA = Format(vlr1, "#.###") 'retorna 2,718 strA = vlr1.ToString("#.###") 'retorna 2,718 strA = String.Format("{0:#.###}", vlr1) 'retorna 2,718 strA = String.Format("{0:e}", vlr1) 'retorna 2,718282e+000 – notação de engª vlr1 = 55 / 7 strA = Format(vlr1, "#.###") 'retorna 7,857 vlr1 *= vlr2 strA = Format(vlr1, "#.###") 'retorna 785,714 strA = Format(vlr2, "#.###") 'retorna 100 strA = Format(vlr2, "#.##0") 'retorna 100,000 Dim reg1 As New System.Globalization.CultureInfo("pt-BR") 'portugues - brasil Dim reg2 As New System.Globalization.CultureInfo("en-US") 'inglês - USA strA = String.Format(reg1, "{0:#.##}", vlr1) 'retorna 2,72 strA = String.Format(reg2, "{0:#.##}", vlr1) ' retorna 2.72 Dim vlrD As Date = "15/09/09" strA = String.Format(reg1, "{0:dd/MMMM/yyyy}", vlrD) 'retorna 15/setembro/2009 strA = String.Format(reg2, "{0:MMMM/dd/yyyy}", vlrD) 'retorna september/15/2009 strA = String.Format(reg2, "{0:#.##0}", vlr1) ‘retorna strA = String.Format(reg2, "{0:#.##0}", vlr2) ‘retorna

31 Formatação de strings Outro tipo de formatação é a conversão de letras maiúsculas em minúsculas ou vice-versa. Sintaxes: StrA= StrB.ToLower ‘ retorna de strB em letras minúsculas StrA = StrB.ToUpper ‘ retorna de strB em letras maiúsculas StrA = Ucase(strB)‘ retorna de strB em letras maiúsculas StrA = Lcase(strB) ‘ retorna de strB em letras minúsculas Exemplos: Dim strA, strB As String strB = "TORNO" strA = strB.ToUpper 'retorna TORNO strB = "toRNo" strA = strB.ToLower 'retorna torno strA = UCase(strB) 'retorna TORNO strA = LCase(strB) 'retorna torno

32 Comparação de strings Finalidade: comparar uma string digitada pelo usuário com uma constante ou valor de referência em tempo de execução. Sintaxes: Id = string.compare (strA, strB) ‘ retorna -1 se as strings forem diferentes (strA < strB); 0 se forem iguais e 1 se (strA > strB) Id = strA.compareto (strB) ‘ retorna de modo idêntico ao compare bol = strA.equals (strB) ‘esse método diferencia maiúsculas de minúsculas. Retorna verdadeiro (true) se as strings forem iguais ou falso (false), caso contrário. bol = strA.startswith (strB) ‘esse método retorna true se a string strA iniciar com strB ou false caso contrário. bol = strA.endswith (strB) ‘esse método retorna true se a string strA terminar com strB ou false caso contrário. Tanto startswith como endswith distinguem maiúsculas de minúsculas.

33 Exemplos: Dim strA, strB As String Dim id As Integer Dim bol As Boolean strA = "FRESAS" strB = "fresa" id = String.Compare(strA, strB) 'retorna 1 - strings diferentes id = String.Compare(strA, "FRESAS") 'retorna 0 strings iguais id = String.Compare(strA, "fresas") 'retorna 1 - strings diferentes id = String.Compare(strA, "fresas", True) 'retorna 0 --desconsidera ‘maiúsculas/minúsculas id = String.Compare(strB, strA) ' retorna -1 - strings diferentes id = strA.CompareTo(strB) 'retorna 1 - strings diferentes id = strA.CompareTo("fresas") 'retorna 1 - strings diferentes bol = String.Equals(strA, strB) ' retorna TRUE bol = String.Equals(strA, "FRESAS") 'retorna TRUE bol = String.Equals(strA, "fresas") 'retorna FALSE bol = strA.Equals("FRESAS") 'retorna TRUE bol = strA.Equals(strB) 'retorna FALSE bol = strA.StartsWith(strB) 'retorna FALSE bol = strA.EndsWith("sas") 'retorna FALSE bol = strA.EndsWith("SAS") ' retorna TRUE

34 ALGUMAS PROPRIEDADES DA CLASSE STRING
Length - armazena a quantidade de caracteres da string chars - retorna o caracter de uma dada posição na string informada pelo indexador Exemplos: Dim tmh As Integer Dim ltr As String Dim strA As String = "brunimento" tmh = strA.Length 'retorna a quantidade de caracteres: 10 ltr = strA.Chars(5) 'retorna m ltr = strA.Chars(0) 'retorna b ltr = strA.Chars(10) 'gera uma mensagem de erro tal como mostrado abaixo

35 ITERAÇÕES Possibilita a racionalização e o controle do fluxo da programação sem necessidade de repetição do mesmo trecho do código For - Next Sintaxe: for <cntd> = <vlri> to <vlrf> [step stp] Next [cntd] for marca o início da iteração cntd é a variável do contador, que deve ser numérica. Geralmente um byte, inteiro ou long, mas pode ser, dependendo do caso um single ou double. Vlri é o valor incial que pode ser passado diretamente ou por referência (outra variável). Vlrf é o valor final. Stp é o valor do incremento (passo). Ele é opcional. Caso não seja declarado, a iteração ocorrerá com passo 1. Next marca o fim do processo (trecho do código) que é executado a cada passo. Ele pode ser seguido no nome da variável contador, mas é opcional.

36 EXEMPLO ‘calcula o fatorial de um número natural N, digitado no controle de texto ‘(textbox1.text) e coloca o resultado em textbox2.text, tal como mostrado na ‘figura abaixo Dim i, N As Long Dim fat As Long = 1 N = TextBox1.Text 'pega o valor a ser processado na caixa de texto For i = 1 To N fat *= i 'executa a multiplicação Next i TextBox2.Text = fat 'transfere o valor para a caixa de texto

37 do - while - loop do - until - loop
é utilizado aonde não se sabe com antecedência o número de interações a serem feitas. Sintaxe: do while cond {trecho do código} loop do marca o início da iteração while cond é o teste a ser executado. Se verdadeiro (TRUE) o processo continua. Se falso (FALSE) o processo será interrompido. loop marca o fim do trecho de código a ser executado do - until - loop é utilizado aonde não se sabe com antecedência o número de interações a serem feitas. Sintaxe: do until cond {trecho do código} loop until cond é o teste a ser executado. Se falso (FALSE)) o processo continua. Se verdadeiro (TRUE o processo será interrompido.

38 do - while - loop do - until - loop
Tanto o while como o until podem ser colocados na linha do loop. Nesse caso, o trecho de código é executado pelo menos uma vez. do - while - loop do {trecho do código} loop while cond do - until - loop loop until cond

39 EXEMPLO dim tmh As Integer = ListBox1.Items.Count
'transfere os nomes dos processos até (inclusive) o processo indicado como marcador dim i As Integer = 0 ' contador dim tmh As Integer = ListBox1.Items.Count dim mcd As String = TextBox1.Text ' marcador dim prc As String ' nome do processo prc = ListBox1.Items.Item(i) ListBox2.Items.Clear() 'limpa o conteúdo da lista a ser atualizada Do While i < tmh And Not (prc.Equals(mcd)) ListBox2.Items.Add(prc) i += 1 'soma 1 ao indexador Loop

40 CONDICIONAIS São utilizados para controlar (desviar) o fluxo de dados. A estrutura é sempre baseada em teste lógico, o qual desviado de acordo com a resultado (verdadeiro ou falso). Sintaxes: IF <cond1> THEN {ação} ENDIF IF <cond1> THEN {ação} ELSE {ação alternativa} ENDIF IF <cond1> OR <cond2> THEN {ação} ELSE {ação alternativa} ENDIF IF <cond1> AND <cond2> THEN {ação} ELSE {ação alternativa} ENDIF

41 Sintaxes: IF <cond1> THEN {ação} ELSEIF <cond2> THEN {ação alternativa1} ELSE ENDIF <cond1> deve ser um teste cujo resultado seja booleno (true or false) Ex: (a >b)?? ELSEIF realiza um outro teste. As instruções (linhas de código) após o serão THEN executadas caso teste seja verdadeiro. A instrução após ELSE será executada somente se os testes anteriores (IF e ELSEIF) falharem (caso falso).

42 SELECT <testcond>
CASE <cond1) {alternativa 1} CASE <cond2> {alternativa 2} CASE <cond3> {alternativa 3} ... CASE <condN) {alternativa N} CASE ELSE {alternativa do else} END SELECT A estrutura SELECT-CASE é uma alternativa ao IF-THEN para os casos onde o resultado do teste (condicional) não seja booleano (falso ou verdadeiro). O teste é avaliado “CASE” por “CASE” até que a condição (variável) a ser testada <testcond> seja válida. Caso isto não aconteça, o fluxo é trasferido para a linha subsequente ao “END SELECT” ou para as linhas após o “CASE ELSE” caso ele exista.

43 Const NMAX = 6000 'rotação máxima da máquina
EXEMPLO Const NMAX = 6000 'rotação máxima da máquina dim rot As Integer 'valor a ser informado pelo usuário dim Ttl As String = "TESTE DA ROTAÇÃO LIMITE" 'título do msgbox rot = TextBox1.Text 'pega o valor digitado If IsNumeric(rot) Then 'testa se é um número If rot > NMAX Then ‘testa contra a rotação máxima MsgBox("ROTAÇÃO EXCEDE O LIMITE PERMITIDO", MsgBoxStyle.Exclamation, Ttl) ElseIf rot = NMAX Then MsgBox("ROTAÇÃO IGUAL AO LIMITE PERMITIDO", MsgBoxStyle.Exclamation, Ttl) Else 'rot < NMAX MsgBox("ROTAÇÃO DENTRO DO LIMITE PERMITIDO", MsgBoxStyle.Exclamation, Ttl) End If Else ' entrada não numérica MsgBox("DIGITE UM NÚMERO", MsgBoxStyle.Exclamation, Ttl) A função MsgBox mostra uma mensagem em uma caixa de diálogo e aguarda a resposta do usuário. Retorna um interiro indicando a resposta dada. A função IsNumeric testa um dado valor. Ela retorna um booleano (true) se ele for numérico ou false caso contrário.

44 EXEMPLO

45 RETIRANDO INFORMAÇÕES DE UM ARQUIVO SEQUENCIAL
Finalidade: abrir um arquivo sequencial (linha a linha) no formato texto e transferir o conteúdo das linhas para a memória RAM (dentro de um variável) SINTAXE FILEOPEN(num,nome,modo) DO WHILE NOT (EOF (num)) var = LINEINPUT (num) LOOP FILECLOSE(num) FILEOPEN função que abre o arquivo Num é o número a ser dado ao arquivo Nome é a variável que armazena o caminho e o nome do arquivo a ser lido Modo informa as alternativas par abertura do arquivo . No caso de leitura ele pode ser aberto nos modos: input, random ou binary. DO-WHILE-LOOP já foi explicado anteriormente. EOF função que retorna verdadeiro (true) o fim do arquivo foi atingido. Válida apenas para arquivos abertos nos modos input e random. LINEINPUT função que transfere para um variável do tipo string a linha corrente do arquivo. Válida apenas para arquivos abertos no modo input. FILECLOSE fecha o arquivo aberto

46 EXEMPLO

47 GRAVANDO INFORMAÇÕES DE UM ARQUIVO SEQUENCIAL
Finalidade: gerar um arquivo novo ou abrir um já existente e gravar o conteúdo da memória RAM (variáveis) Modo define o tipo de gravação: append ou output. append insere novas linhas ao final de um arquivo já existente. output apaga, caso exista, o arquivo atual e grava a partir do início. PRINTLINE grava uma linha no arquivo aberto (num) com a string armazenada (var) e acrescenta um “fim de linha”. Obs: caso o arquivo não exista, o FILEOPEN criará um novo (com o nome e caminho informados). Entretanto, se a pasta (caminho) não existir, será gerada uma mensagem de erro. SINTAXE FILEOPEN(num,nome,modo) PRINTLINE (num, var) FILECLOSE(num)

48 EXEMPLO

49 Controles para leitura e gravação de dados em arquivos
O VISUAL BASIC CONTÉM UM CONTROLE PARA ABERTURA DE AQUIVOS (openfiledialog) E OUTRO PARA GRAVAÇÃO (savefiledialog) SIMILARES AQUELES UTILIZADOS EM TODOS OS APLICATIVOS PARA O WINDOWS ESSES CONTROLES ESTÃO DISPONÍVEIS NO “TOOLBOX” E APÓS DAR UM DUPLO CLICK ELES SE INSTALAM NA PARTE INFERIOR DO FORMULÁRIO, TAL COMO MOSTRADO NA FIGURA AO LADO, JUNTAMENTE O CONTROLE PARA CRIAÇÃO DE MENUS (Mainmenu)

50 EXEMPLO: abertura Obs.: MenuItem2 foi o nome dado ao menu ABRE

51 EXEMPLO: gravação Obs.: MenuItem3 foi o nome dado ao menu GRAVA

52 SINTAXE PARA SUB-ROTINAS (SUB)
Funções e sub-rotinas O USO DE FUNÇÕES E SUB-ROTINAS POSSIBILITA A MODULARIDADE DO PROGRAMA POR MEIO DA SEPARAÇÃO DE TRECHOS DO CÓDIGO. ISTO FACILITA A MANUTENÇÃO E AUMENTA E PERMITE O COMPARTILHAMENTO DESSAS ROTINAS COM OUTROS PROJETOS. A DIFERENÇA BÁSICA ENTRE UMA FUNÇÃO OU SUB-ROTINA ESTÁ NO SEU EFEITOS. AS FUNÇÕES SEMPREM RETORNAM UM VALOR, EQUNATO AS SUB-ROTINAS TÊM EFEITOS SECUNDÁRIOS E NÃO RETORNAM VALORES DIRETAMENTE. SINTAXE PARA SUB-ROTINAS (SUB) Sub nome(prmt1 as type, prmt2 as type, ..., prmtN as type) {código} End sub

53 SINTAXE PARA FUNÇÃO Sub nome(prmt1 as type, prmt2 as type, ..., prmtN as type) as type {código} return vlret End sub prmt1 a prmtN são os parâmetros (ou argumentos) da sub-rotina ou função. Obs.: geralmente, mas não necessariamente, as funções são criadas nos módulos para facilitar uso das mesmas em outros projetos.

54 Representação vetorial; produto escalar e produto vetorial
EXEMPLO : Representação vetorial; produto escalar e produto vetorial

55 Sub-rotina: disparada pelo botão “CÁLCULO”

56 Funções utilizadas na sub-rotina


Carregar ppt "UTILIZAÇÃO DA LINGUAGEM MS-VISUAL BASIC .NET"

Apresentações semelhantes


Anúncios Google