|
Clube
VB - Funções
VB6
Aula
13
Neste
módulo iremos gerar nossa segunda aplicação VB, sendo que o objetivo
da mesma é gerar uma calculadora. Nesta calculadora, iremos utilizar
as funções e diversos eventos, o que irá facilitar o aprendizado
dos tópicos estudados nos módulos anteriores. Para este projeto,
siga os passos a seguir:
Inicie
uma nova aplicação VB;
No
formulário, na parte superior deste, inclua um objeto TEXTBOX, fazendo
com que o mesmo ocupe toda a parte superior do form;
Altere
a propriedade Caption do formulário para PROJETO CALCULADORA;
Apague
o conteúdo da propriedade Text do objeto TextBox;
Vamos
agora, com o uso dos objetos CommandButton montar as teclas de nossa
calculadora, para isso, posicione 17 objetos CommandButton conforme
mostra a figura a seguir:

O
próximo passo é alterar a propriedade Caption dos CommandButton
01 ao 10 para 0,1,2,3,4,5,6,7,8,9,0 respectivamente, formando assim
o teclado numérico de nossa calculadora.
Agora,
iremos gerar os botões que irão representar as operações aritméticas
de nossa calculadora. Estes botões serão os de número 11 ao 16,
contendo respectivamente o seguinte conteúdo: +,-,*,/,=,C. Altere
o Caption dos mesmos para os valores apresentados.
Finalmente,
configure o Caption do Command17 para "FIM".
Ao
final deste procedimento, seu formulário deverá ter o seguinte visual:

O
primeiro passo é configurar os botões de comando que representam
os números que irão ser utilizados no teclado numérico de nossa
calculadora. A lógica é a seguinte: Cada vez que o usuário clicar
sobre um dos botões numéricos, este deverá se acrescentado ao TextBox.
Ou seja, teríamos a seguinte situação:
Conteúdo
do TextBox = Conteúdo do TextBox + valor representado pelo botão.
Observe
que, o TextBox é uma String e, deveremos realizar uma concatenação,
ou seja, soma do valor já armazenado nesta objeto com o valor representado
pelo botão clicado. Assim sendo, para o botão que representa o número
"1" teremos o seguinte código:
Private
Sub Command1_Click()
Text1.Text = Text1.Text + "1"
End Sub
Este
mesmo procedimento será utilizado para os botões 2, 3, 4, 5, 6,
7, 8, 9 e 0, apenas substituindo o "1" por "2"
... "3" .... e assim sucessivamente. Observe a sequência
a seguir:
Código
para o botão 2:
Private
Sub Command2_Click()
Text1.Text = Text1.Text + "2"
End Sub
Código
para o botão 3:
Private Sub Command3_Click()
Text1.Text = Text1.Text + "3"
End Sub
Código
para o botão 4:
Private Sub Command4_Click()
Text1.Text = Text1.Text + "4"
End Sub
Código
para o botão 5:
Private Sub Command5_Click()
Text1.Text = Text1.Text + "5"
End Sub
Código
para o botão 6:
Private Sub Command6_Click()
Text1.Text = Text1.Text + "6"
End Sub
Código
para o botão 7:
Private Sub Command7_Click()
Text1.Text = Text1.Text + "7"
End Sub
Código
para o botão 8:
Private Sub Command8_Click()
Text1.Text = Text1.Text + "8"
End Sub
Código
para o botão 9:
Private Sub Command9_Click()
Text1.Text = Text1.Text + "9"
End Sub
Código
para o botão 0:
Private
Sub Command10_Click()
Text1.Text = Text1.Text + "0"
End Sub
Pronto,
nossa calculadora já possui a codificação para que, ao clicar sobre
os botões que representam os números, estes sejam repassados ao
visor de nossa calculadora (TextBox). Lembramos que esta calculadora
irá operar apenas com cliques do Mouse.
A
seguir, vamos codificar os botões que representam as operações aritméticas.
Ao clicar sobre um botão de soma, subtração, etc... temos que saber
o seguinte:
1.
Deveremos armazenar o conteúdo do TextBox em uma determinada variável;
2. Zerar o conteúdo do TextBox para que este receba o novo valor,
que irá operar com o valor anterior;
3. Em seguida, após clicar sobre o botão de igualdade, será realizada
a operação entre o valor anterior do TextBox que foi armazenado
em uma variável e o novo valor digitado no componente.
Com
esta lógica, entre com a seguinte codificação para o botão de soma:
Private
Sub Command11_Click()
valor = Val(Text1.Text)
Text1.Text = ""
operacao = "soma"
End Sub
No
código acima, primeiro armazenamos na variável VALOR, o conteúdo
numérico do objeto Text1.text. Esta transformação de String para
número se deu pela função VAL. Em seguida, foi zerado o conteúdo
armazenado no objeto TextBox e foi armazenado em uma outra variável
a string SOMA, para que no ato da operação matemática a ser realizada
seja identificado o tipo de operador.
Aqui
temos um problema, usamos duas variáveis porém não declaramos as
mesmas, assim sendo, nas declarações gerais do formulário (GENERAL
... DECLARATIONS), deveremos declara-las. Conforme mostra o código
a seguir:
Public
valor As Single
Public operacao As String
Agora,
vamos proceder da mesma forma para a codificação do botão de subtração,
substituindo o conteúdo da variável operação para SUBTRACAO, conforme
mostra o código a seguir para o bota~em questão:
Private Sub Command12_Click()
valor = Val(Text1.Text)
Text1.Text = ""
operacao = "subtracao"
End Sub
Agora,
vamos codificar o botão que representa a multiplicação:
Private
Sub Command14_Click()
valor = Val(Text1.Text)
Text1.Text = ""
operacao = "multiplicacao"
End Sub
Iremos
então codificar o botão de divisão:
Private Sub Command13_Click()
valor = Val(Text1.Text)
Text1.Text = ""
operacao = "divisao"
End Sub
Agora,
nosso próximo passo é codificar o botão de igualdade, que deverá
fazer apresentar no TextBox o resultado da operação aritmética realizada
entre os dois valores. Para isso, deveremos utilizar o atual valor
do TextBox com o tipo de operação a ser realizada bem como com o
valor anterior armazenado na variável VALOR. Então, teremos no botão
de igualdade o seguinte código:
Private Sub Command15_Click()
Select Case operacao
Case "soma"
valor = Val(Text1.Text) + valor
Case "subtracao"
valor = valor - Val(Text1.Text)
Case "multiplicacao"
valor = valor * Val(Text1.Text)
Case "divisao"
valor = valor / Val(Text1.Text)
End Select
Text1.Text = valor
End Sub
Aqui
temos a grande novidade deste código em relação ao que já estudamos,
o comando SELECT CASE. Observe que, dependendo do botão que representa
a operação aritmética que foi clicado teremos uma operação diferente,
porém este tipo de operação está sendo realizada com uma mesma variável
que representa o tipo da operação, a variável OPERACAO. Neste caso,
temos o conjunto de testes do SELECT CASE, onde para uma mesma variável,
testamos diversas circunstâncias. A sintaxe deste comando é:
SELECT
CASE variável
Case condição
lista de comandos a serem
executados caso condição for verdadeira
Case condição
lista de comandos a serem
executados caso condição for verdadeira
Case condição
lista de comandos a serem
executados caso condição for verdadeira
....
....
END SELECT
Em
poucas palavras ... é uma maneira de realizar diversos testes com
uma mesma variável, o que nos foi fundamental para o desenvolvimento
desta calculadora.
Nos
falta apenas codificao o botão FIM, que tem apenas o código END
e o botão "Ce" que tem a finalidade de apagar o conteúdo
do TextBox, sendo assim, neste teremos o código TEXT1.TEXT="".
Agora,
basta executar o seu projeto.
Voltar
Principal
| Cursos Gratuitos
| Cursos Diversos
| Dicas
| Promoções
| Mapa do
Site | QUIZ
|
|
Classificados | Central
Currículo | Fórum
| Fale Conosco |