Boa tarde Pessoal!!!
O Exemplo de Aplicação de hoje, consiste em mostrar o uso de mais de um Form(Formulario) em um único Projeto. Veja abaixo em que consiste a Aplicação:
Aplicação em Execução - Clique para ampliar
A aplicação consiste em 1 Menu Principal, 1 Formulario que faz o calculo da Area de um retangulo, e 1 Formulário que faz a concatenação de um Nome.
OBSERVAÇÃO 1:
Para criar mais forms(Formulários) dentro do mesmo projeto além do Form que já vem criado por default no VB, basta clicar no menu principal do VB.NET 2005 em Project> Add Windows Form, selecionar Windows Form, dar um nome, e clicar em Add.
Layout (FrmArea)
Layout Form que calcula área do retangulo - Clique p/ Ampliar
Código (FrmArea):
Código do frmArea - Clique para Ampliar
O código do Formulario “frmArea”, é feito em dois botões:
-
No botão “btnCalcular” (Evento Click) é feito o Código para Calcular;
-
No botão “btnLimpar” (Evento Click) é feito o código para limpar as Caixas de Texto
“btnCalcular“:
1º Linha: É declarada a variável “Base”, do tipo Inteiro pois ira armazenar um numero inteiro, que no caso será a Base do retangulo;
2º Linha: É declarada a variável “Altura”, do tipo Inteiro pois ira armazenar um numero inteiro, que no caso será a Altura do retangulo;
3ºLinha: É declarada a variável “Área”, tmbém do tipo inteiro, que irá armazenar o resultado do calculo da Base x Altura.
4ºLinha: É especificado que dado será armazenado na variável “Base”, que no caso é o conteudo que for digitado na “txtBase”.
Repare que é feito uma conversão para inteiro do conteudo de “txtBase”. Porque é feito isso???
Resposta: Essa conversão é necessária porque o componente TextBox manipula apenas strings(Texto), e como desejamos fazer um calculo precisamos converter o texto para um numero, no caso um numero inteiro, pois a variavel “Base” foi definida como tipo Inteiro, e como queremos armazenar nela o conteudo do txtBase, precisamos converter o conteudo do txtBase para o mesmo tipo da variavel.
Assim temos: Base = Cint(txtBase.text)
Obs.: O “.Text”, é a propriedade que estamos manipulando, que é a propriedade Texto, ou seja, estamos convertendo o Texto, para Inteiro, para isso usa-se “Cint”.
Veja mais sobre variáveis e conversões clicando aqui!
5º Linha: É o mesmo caso da 4ºlinha. É especificado que dado será armazenado na variável “Altura”, que no caso é o conteudo que for digitado na “txtAltura”.
Repare que também é feito uma conversão para inteiro do conteudo de “txtAltura”, pelo mesmo motivo da 4º Linha, como queremos fazer um calculo com o que for informado no mesmo, precisamos converter seu conteudo para Inteiro, que é o mesmo tipo da variavel em que queremos armazenar (Altura).
6ºLinha: Nesta linha é armazenado na variável “Area”, o resultado da Multiplicação da Base pela Altura, que seria o calculo da Área.
7ºLinha: Esta linha é composta por uma MsgBox, que serve para exibir o resultado. Em sua sintaxe é feita uma concatenação de strings: “A Area do retangulo é: ” + o resultado convertido para string(pois a MsgBox só manipula strings) que esta armazenado na variavel “Area” que é do tipo inteiro.
Para ver mais sobre a sintaxe da MsgBox Clique Aqui!
“btnLimpar”:
Como queremos clicar no botão “Limpar”, e Limpar as caixas de texto, codificamos no Evento Click do btnLimpar as seguintes linhas.
1º Linha: Atribui vazio (“”), à txtBase.Text;
2ºLinha: Atribui vazio (“”), à txtAltura.Text;
Repare que quando queremos limpar o conteudo de algum componente que manipula Strings, basta atribuirmos vazio (“” – Abre e fecha aspas) ao mesmo.
Layout (frmNome):
Layout do frmNome - Clique para ampliar
Código (frmNome):
Código do frmNome - Clique para ampliar
O código do Formulario “frmNome”, é feito em dois botões:
-
No botão “btnConcatenar” (Evento Click) é feito o Código para Concatenar as partes do Nome;
-
No botão “btnLimpar” (Evento Click) é feito o código para limpar as Caixas de Texto, e a Label que exibe o Nome concatenado.
“btnConcatenar”:
1ºLinha: É definida a variável “Nome1” do tipo String, pois será armazenado nela o “1ºNome” que é um conteudo Texto;
2ºLinha: É definida a variável “NomeMeio” do tipo string, pois será armazenado nela o “Nome do meio” que é um conteudo Texto;
3ºLinha: É definida a variável “Sobrenome”, do tipo string, pois será armazenado nela o “Sobrenome” que é um conteudo Texto;
4º Linha: É especificado que dado será armazenado na variável “Nome1”, que no caso é o conteudo que for digitado na “txtNome1”. Nesse caso não precisa-se fazer nenhuma conversão, pois a variavel é String e o tipo do dado que vai ser armazenado na mesma, também já é String,isso pelo fato de se usar a propriedade (.Text) do txtSobrenome, que serve para pegar o conteudo Texto do componente.
5ºLinha: É especificado que dado será armazenado na variável “NomeMeio”, que no caso é o conteudo que for digitado na “txtMeio”. Nesse caso não precisa-se fazer nenhuma conversão, pois a variavel é String e o tipo do dado que vai ser armazenado na mesma, também já é String, isso pelo fato de se usar a propriedade (.Text) do txtSobrenome, que serve para pegar o conteudo Texto do componente.
6ºLinha: É especificado que dado será armazenado na variável “Sobrenome”, que no caso é o conteudo que for digitado na “txtSobrenome”. Nesse caso não precisa-se fazer nenhuma conversão, pois a variavel é String e o tipo do dado que vai ser armazenado na mesma, também já é String, isso pelo fato de se usar a propriedade (.Text) do txtSobrenome, que serve para pegar o conteudo Texto do componente.
7ºLinha: Essa linha serve para exibir na “lblNome”, o nome ja concatenado, ou seja, as partes do nome que foi digitado concatenadas. Para isso basta atribuir para a propriedade “Text” da lblNome (lblNome.Text), a concatenação:
Nome1 + ” ” + NomeMeio + ” ” + Sobrenome
Como são variavies do tipo String, e estão armazenando os dados do Tipo String, então se concatenarmos e atribuirmos elas para a propriedade text do lblNome, sera exibido as partes do Nome juntas. Repare que foi utilizado entre cada parte do nome ” “, (abre aspas – espaço – fecha aspas), que seria um espaço entre cada parte do Nome.
“btnLimpar”:
Como queremos clicar no botão “Limpar”, e Limpar as caixas de texto e a Label que exibe o nome concatenado, codificamos no Evento Click do btnLimpar as seguintes linhas.
1ºLinha: Atribui vazio (“”), à txtNome1.Text;
2ºLi nha: Atribui vazio (“”), à txtMeio.Text;
3º Linha: Atribui vazio (“”), à txtSobrenome.Text;
Repare que quando queremos limpar o conteudo de algum componente que manipula Strings, basta atribuirmos vazio (“” – Abre e fecha aspas) ao mesmo.
4ºLinha: A lblNome que armazena o Nome concatenado, não é para ser limpa, ou seja, não é para ser atribuída de vazio quando clicarmos em “Limpar”, e sim é para ser colocado nela novamente o texto que estava por padrão, (veja o Layout do frmNome), que no caso é o Texto:
O nome aparece aqui!
para isso basta atribuir para a prorpiedade Text do lblNome, esse texto, da seguinte maneira:
lblNome.text = “O nome aparece aqui!”
O texto é declarado entre aspas, pois é uma string.
Layout(frmPrincipal):
Layout frmPrincipal - Clique para ampliar
Repare que este formulário não tem o botão de Maximizar, Minimizar e Fechar na barra de titulos. Para remove-los, basta deixar como “False” as seguintes propriedades, do “Form”(frmPrincipal):
-
MinimizeBox
-
MaximizeBox
-
ControlBox
Código (frmPrincipal):
Código do frmPrincipal - Clique para ampliar
O código do Formulario “frmPrincipal”, é feito em três botões:
-
No botão “btnArea” (Evento Click) é feito o Código para chamar o Form “frmArea”
-
No botão “btnNome” (Evento Click) é feito o código para para chamar o Form “frmNome”
- No botão “btnSair” (Evento Click) é feito o código para fechar a Aplicação.
“btnArea”:
Esse botão chama o formulário “frmArea” que calcula a áre ado retangulo, a partir do seguinte código:
frmArea.Show()
Repare que para chamar um form(Formulario), basta declarar o [nome do Form].Show()
“btnNome”:
Esse botão chama o formulário “frmNome” que faz a concatenação das partes de um Nome, a partir do código:
frmNome.Show()
“btnSair”:
Esse botão serve para fechar a Aplicação, a partir do código:
End
Repare que o código End, fecha toda a Aplicação, ou seja, todos os forms que estiverem abertos, mesmo ele sendo declarado apenas no frmPrincipal. Porém nesse caso é o que queremos, mas mais para frente veremos como fechar um unico form.
OBSERVAÇÃO 2:
Quando executarmos o projeto, queremos que o 1º form a ser carregado seja o Menu Principal(frmPrincipal), pois é a partir dele que chamaremos os outros formulários, por isso, verifique que form está para ser inicializado em 1º plano, pelos seguintes passos:
No menu principal do VB.NET 2005 , vá em Projects > [NomedoProjeto]Properties, e no ComboBox “Startup form“, selecione o form que quer que seja o 1º a ser inicializado quando executado a aplicação, que nesse caso é o frmPrincipal.
Isso será usado em várias situações, por isso é bom lembrar.
…
…
Mais pra frente veremos também como usar o componente “MenuStrip”, no form principal. Esse componente, é um Menu, igual a esses do windows, em quando clicado abre-se uma caixa de opções a serem escolhidas..
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Qualquer dúvida não deixem de postar um comentário. 🙂