Tudo sobre Visual Basic

Tudo sobre Visual Basic

(Parte 2 de 7)

Propriedade Visible

Como o próprio nome indica, essa propriedade define se um controle deve ou não estar visível em um determinado momento. Ela só pode assumir os valores True (verdadeiro) ou False (falso);

Propriedade Enabled

Não usamos essa propriedade em nosso projeto, mas vamos citá-la agora para evitar confusões com Visible. Você já reparou quando abre uma janela qualquer do Windows e aparece um botão ou uma opção de menu cujo rótulo está com uma cor mais “apagada”, indicando que aquele controle não está acessível no momento? A propriedade Enabled é quem faz isso: ela habilita (quando True) ou não (quando False) o acesso ao controle em um determinado momento. Um exemplo: você cria um botão “Ok” para ser utilizado quando forem fornecidos alguns valores necessários para se realizar um cálculo. Você pode usar Enabled para desabilitar o botão Ok até que o usuário tenha fornecido esses valores, pois só depois disso ele poderá usá-lo.

Propriedade Appearance

A propriedade Appearance define a aparência do controle no formulário. Ela só pode ser modificada em tempo de projeto, e normalmente só pode assumir dois valores: 0 – Flat (o controle terá a mesma aparência do formulário, não haverá destaque) ou 1 – 3D (o controle será exibido em perspectiva 3D).

Propriedade BorderStyle

Essa propriedade normalmente é aplicada ao formulário, e, como o próprio nome indica, define o estilo de sua borda. Existem seis tipos de bordas, sendo que alguns controles também possuem a propriedade BorderStyle, mas não todos os tipos. Os tipos de bordas são os seguintes:

0 – None (Nenhuma);

1 - Fixed Single (Fixa Simples): indica que o formulário não será dimensionável, ou seja, o usuário não poderá alterar o tamanho no formulário em tempo de execução.

2 – Sizable (Dimensionável);

3 - Fixed Dialog (Diálogo Fixo): o formulário não possuirá os botões Maximizar e Minimizar, e, além disso, não será dimensionável. É o estilo da borda das caixas de diálogo do Windows;

Microsoft Visual Basic 613

4 - Fixed ToolWindow (Ferramenta Fixa): esse tipo não possui o menu de controle e os botões Maximizar e Minimizar. Não é dimensionável, e mostra somente o botão Fechar e a barra de título com a fonte reduzida. Além disso, o formulário não aparece na barra de tarefa do Windows.

5 - Sizable ToolWindow (Ferramenta Dimensionável): semelhante a Fixed ToolWindow, só que dimensionável.

Propriedade StartUpPosition

Aplicada ao formulário, essa propriedade determina sua posição na tela do computador quando for acionado. Os valores possíveis são:

0 – Manual: a posição inicial será a mesma que o formulário ocupa em tempo de projeto;

1 – Center Owner: a posição inicial será o centro do formulário principal da aplicação, quando temos mais de um formulário no projeto;

2 – Center Screen: a posição inicial será o centro da tela do computador; 3 – Windows Default: o Windows determinará a posição inicial do formulário.

Propriedade Font

A propriedade Font permite a formatação da fonte usada nas propriedades Text e Caption. Quando você clica em Font, é aberta a janela de formatação de fontes do Windows, de modo que você poderá aplicar fonte, tamanho e efeitos ao texto das propriedades citadas. Essa propriedade não pode ser alterada em tempo de execução, mas para isso o VB fornece algumas propriedades relacionadas a Font, que são as seguintes:

FontBold (Negrito), FontItalic (Itálico), FontStrikethru (Riscado) e FontUnderline (Sublinhado): podem assumir os valores True (liga o efeito) ou False (desliga o efeito);

FontName (Nome da Fonte): indica o nome da fonte a ser aplicada ao controle;

FontSize (Tamanho da Fonte): recebe um valor numérico referente ao tamanho a ser aplicado em uma fonte True Type.

Obs.: com exceção de Font, essas propriedades só podem ser alteradas em tempo de execução.

Codificação dos eventos

Essa é a etapa na qual vamos agora fazer nosso programa funcionar. Como já foi dito anteriormente, o Visual Basic é uma linguagem orientada a eventos, o que quer dizer que os objetos respondem a eventos que contém a codificação necessária. Cada evento contém uma subrotina (ou procedure) associada a ele. Ou seja, a codificação será feita em procedures de acordo com a ação que o programa deverá executar quando um determinado evento ocorrer.

Antes de escrever uma procedure, você precisa dizer ao VB para qual objeto deseja escrevê-la. A maneira mais simples de se fazer isso é dando um duplo click sobre o objeto desejado, e a janela Código (Code) será apresentada. Na janela Código temos três destaques:

Quando aberta, a janela Código apresenta a procedure correspondente ao evento padrão do objeto. Por exemplo: o evento padrão de um botão de comando é o Click, portanto quando abrirmos a janela Código de um botão de comando o evento que aparecerá será o Click. Porém, no caso do evento padrão não conter nenhuma codificação, mas outro qualquer sim, então a janela será aberta nesse outro evento;

Na parte superior da janela temos duas caixas de combinação. A da esquerda, chamada Object, contém os nomes de todos os objetos do nosso formulário, e da direita, chamada Proc, uma lista com todas as procedures associados ao objeto atualmente selecionado;

Existe uma opção na caixa Object chamada General, que a princípio só contém uma procedure, chamada Declarations. Esse não é um objeto, e sim uma Seção: uma parte do programa onde são escritas instruções especiais, como declaração de variáveis e funções de uso geral.

Quando estamos programando em VB, é freqüente a necessidade de se modificar o valor das propriedades dos objetos em tempo de execução. Para fazer isso, o VB refere-se às propriedades de um objeto da seguinte maneira:

Objeto.Propriedade = <valor>

Microsoft Visual Basic 614

Mas vamos fazer a codificação do nosso projeto. Comecemos pelo botão cmdExit: para escrever o código necessário ao seu funcionamento, siga os seguintes passos:

1.Dê um duplo click sobre o botão cmdExit: a janela Código se abre no evento Click:

2.Escreva o seguinte código:

Private Sub cmdExit_Click()

End End Sub

A primeira linha da procedure indica seu nome – cmdExit_Click – e sua classe – Private (privada). A última linha indica o fim da procedure, através do comando End Sub. Entre o nome da procedure e o comando End Sub é que escrevemos a codificação necessária, que nesse caso resumiu-se ao comando End (que nome sugestivo, não?), cuja função é encerrar a execução do programa.

Vamos agora testar nosso programa. Para isso, basta clicar no botão Start da barra de ferramentas ou então pressionar a tecla F5. Teste o funcionamento de seu aplicativo: se tudo foi feito corretamente, quando você clicar no botão “Exit” o programa será encerrado e você retornará ao VB.

Uma observação: quando estamos criando um formulário ou escrevendo código dizemos que estamos em tempo de projeto; quando estamos executando um programa dizemos que estamos em tempo de execução. Essa diferenciação é importante, pois existem algumas propriedades que não podem ter seu valor alterado em tempo de execução.

Planejando a codificação

Planejamento é a palavra chave para nós, programadores, quando chegamos na fase de escrever a programação do aplicativo. Antes de começar a codificação de um programa você precisa saber o que ele deve fazer e quando: identificar quais os eventos que podem ser acionados pelo usuário e como eles vão influenciar a execução do aplicativo, para poder assim programá-los de maneira a chegar ao resultado desejado. Vamos então planejar nosso primeiro aplicativo:

Temos em nosso formulário três botões de opção, que servirão para indicar nosso “humor matinal”;

Temos também três caixas de figura, inicialmente invisíveis, cada uma delas contendo uma “carinha” diferente, e três Labels que não contém texto nenhum;

Quando clicarmos em um botão qualquer, a figura e o texto correspondente a ele deverão aparecer, e a figura e o texto dos outros botões não deverão mais ser exibidos;

Você já deve ter percebido que o evento que vamos trabalhar é o Click dos botões de opção, pois é ele que vai gerar as ações necessárias para cumprirmos nosso planejamento. Agora que já sabemos o que fazer, vamos escrever a codificação para isso:

1. Dê um duplo-click no botão de opção optHappy. A janela Código será aberta e a procedure optHappy_Click exibida;

2.Digite os comandos indicado:

Private Sub optHappy_Click() picHappy.Visible = True picOk.Visible = False picSad.Visible = False lblHappy.Caption = "I'm going to Disneyworld!" lblOk.Caption = Empty lblSad.Caption = Empty End Sub

Microsoft Visual Basic 615

Obs.: Empty é uma função do VB que retorna uma string vazia (nula).

3. Dê um click na lista Object e escolha o objeto optOk. Se a procedure exibida pela janela Código não for a optOk_Click, selecione-a na lista Proc;

4.Digite a procedure:

Private Sub optOk_Click() picHappy.Visible = False picOk.Visible = True picSad.Visible = False lblHappy.Caption = Empty lblOk.Caption = "I'm Ok today." lblSad.Caption = Empty End Sub

5.Selecione agora o objeto optSad e a procedure optSad_Click, e escreva o código para ela (você pode usar os recursos de copiar e colar do Windows):

Private Sub optSad_Click() picHappy.Visible = False picOk.Visible = False picSad.Visible = True lblHappy.Caption = Empty lblOk.Caption = Empty lblSad.Caption = "Goodbye, cruel world..." End Sub

6. Pressione F5 para executar o programa. Se você digitou tudo corretamente, o VB exibirá seu formulário na tela, como no exemplo a seguir:

7.Dê um click no botão com o rótulo “I’m Happy” e veja se o resultado é o esperado:

Microsoft Visual Basic 616

8. Verifique o funcionamento dos outros botões de opção. Se algo estiver errado, confira a codificação e execute o aplicativo novamente.

Criando um arquivo executável

O último passo de qualquer projeto é a criação do arquivo executável. Ou você vai entregar para o cliente os arquivos que o compõem? Além das razões monetárias óbvias, você não vai correr o risco de um curioso qualquer alterar ou copiar o código que você tanto suou para criar, vai? Além disso, se você não criar um executável, o cliente deverá possuir um cópia do VB instalada em sua máquina para poder rodar o aplicativo, o que não é lá muito prático. A criação de arquivos executáveis é feita pela opção Make <nome do projeto>.exe do menu File:

1. Escolha a opção Make hello.exe do menu File do VB. Uma caixa de diálogo será exibida, onde você deverá informar o nome do arquivo executável, caso queira mudá-lo. Após indicar o nome, clique em Ok;

2. Crie um atalho para o arquivo executável na área de trabalho do Windows. Veja que, como ícone do atalho, será exibida a “carinha feliz”.

Package and Deployment Wizard

A criação do executável, apesar de importante, ainda não é suficiente para a distribuição de uma aplicação desenvolvida em VB. Como você sabe, o Windows é um sistema composto de inúmeros arquivos e programas, cada qual com sua função específica, sendo que alguns são necessários para a execução de aplicativos. Além disso, o programa escrito em VB não tem o poder de “rodar” sozinho, mesmo após a criação do módulo executável: para funcionar, necessita de algumas bibliotecas chamadas de run-time, e dos arquivos OCX que estão gravados no diretório do Windows. Chamamos a esses arquivos de dependências. Mas, como saber quais são as dependências de um aplicativo?

Um dos utilitários que acompanham o VB em suas versões comerciais é o Package and Deployment Wizard, cuja função é justamente resolver esse problema. Ele cria um programa de instalação para sua aplicação, que vai copiar para a máquina onde o programa for instalado todos os arquivos de run-time, DLL’s e OCX’s que ele precisar, da mesma maneira que em um aplicativo comercial.

O uso desse utilitário é muito simples:

Microsoft Visual Basic 617

1.Na caixa Select Project, selecione o projeto para o qual deve ser criado o programa de instalação; 2.Clique no botão Package para iniciar o assistente;

3. Você deverá responder algumas perguntas (por exemplo, o nome da opção que será criada no menu

Iniciar do Windows) sendo que para a maioria delas não é necessário fazer qualquer alteração. Devemos porém destacar uma delas na qual deve-se indicar, se for o caso, o nome dos arquivos externos ao projeto que também precisam ser copiados. O caso mais comum é o de arquivos de banco de dados, quando da primeira instalação do aplicativo;

4. Depois que você responder essas perguntas, deverá indicar em que unidade e (se for o caso) em que pasta onde devem ser gravados os arquivos da instalação. Se você indicar uma unidade de disquetes, o Wizard criará os disquetes de instalação automaticamente;

5.Pronto, o Wizard resolve todas as dependências e cria o programa de instalação para você.

Microsoft Visual Basic 618

Lição 2: Entrada e Saída de Dados

Entrada e saída são dois conceitos importantíssimos em Processamento de Dados, pois envolvem a interação do usuário com a máquina: por entrada, entende-se toda solicitação ou fornecimento de dados ao computador pelo operador, e por saída, o retorno pelo computador do resultado obtido. Nessa lição você vai aprender a implementar esses dois conceitos em seus programas.

Caixas de Texto

Em programação visual, existem várias maneiras de se permitir a entrada de dados, mas a principal é o uso das caixas de texto (TextBox). Seu evento padrão é o Change, que ocorre sempre que acontece uma digitação, e a propriedade principal é a Text. Vejamos então algumas propriedades importantes:

Propriedade Text

A propriedade Text de uma caixa de texto armazena o texto contido na área de edição. Ela pode ser alterada pelo usuário em tempo de execução, o que permite então a digitação de dados no programa. Como a propriedade Text armazena textos, quando houver a necessidade do dado a ser digitado ser numérico teremos que converter seu conteúdo usando funções específicas para esse fim.

Propriedade MaxLength

Essa propriedade serve para determinar o tamanho máximo em caracteres do dado digitado em uma caixa de texto. Por exemplo: sabendo que a digitação em uma caixa de texto chamada txtNome não pode ter mais de 30 caracteres, determinamos para a MaxLength de txtNome o valor 30. Se MaxLength não for definida, o valor padrão é zero, e não haverá limite para a digitação no campo.

Propriedade Multiline

A função dessa propriedade é permitir ou não a digitação de mais de uma linha em uma caixa de texto. Os valores possíveis são True (Multiline habilitada) ou False. Com MuliLine = True, quando Enter for pressionada, a digitação passa para a próximo linha. Além disso, a propriedade Alignment de uma caixa de texto só funciona de Multiline estiver habilitada.

Propriedade PasswordChar

Eis uma propriedade muito interessante: você já digitou uma senha em um programa qualquer em que aparece na caixa um caractere especial (normalmente é um “*”) ao invés daquele digitado? Quem faz isso é PasswordChar: basta informar em seu valor o caracter desejado, e o efeito será exatamente esse.

Propriedades ForeColor e BackColor

A propriedade ForeColor define a cor da fonte usada no texto exibido pelo controle, e BackColor indica a cor do fundo de um objeto. Essas propriedades recebem como valor um código numérico ou hexadecimal que representa a cor desejada. Em tempo de projeto, para alterá-las a maneira mais simples é clicar sobre a propriedade que deve ser modificada e depois no botão com as reticências que aparece ao lado do código da cor atual. Uma janela com as opções de cores disponíveis se abre e basta escolher a que mais lhe agrade. Para alterar seus valores em tempo de execução, são usadas as funções RGB e QBColor, que estudaremos mais adiante.

(Parte 2 de 7)

Comentários