VB
.NET - Usando os recursos da classe Application
![]() |
O artigo de hoje vou mostrar com usar os recursos da classe Application em uma aplicação Windows Forms usando a linguagem VB .NET. |
A classe Application, do namespace System.Windows.Forms, é muito versátil e possui os seguintes recursos:
Simples assim.
As principais propriedades dessa classe são:
| Nome | Descrição |
| AllowQuit | Obtém um valor indicando se o chamador pode encerrar a aplicação |
| CommonAppDataPath | Obtém o caminho para os dados da aplicação que é compartilhado entre todos os usuários |
| CommonAppDataRegistry | Obtém a chave do registro para os dados da aplicação que é compartilhado entre todos os usuários |
| CompanyName | Obtém o nome da empresa associada com a aplicação |
| CurrentCulture | Obtém ou define a informação da cultura para a thread atual |
| CurrentInputLanguage | Obtém ou define a linguagem de entrada atual para a thread corrente |
| ExecutablePath | Obtém o caminho para o arquivo executável que iniciou a aplicação, incluindo o seu nome |
| LocalUserAppDataPath | Obtém o caminho para os dados da aplicação do usuário local |
| OpenForms | Obtém a coleção de formulários abertos da aplicação |
| ProductName | Obtém o nome do produto associado com a aplicação |
| ProductVersion | Obtém o a versão do produto associado com a aplicação |
| StartupPath | Obtém o caminho para o arquivo executável que iniciou a aplicação sem incluir o seu nome |
| UserAppDataPath | Obtém o caminho dos dados da aplicação de um usuário |
| UserAppDataRegistry | Obtém a chave do registro para os dados da aplicação de um usuário |
Dentre os métodos mais importantes destacamos:
| Nome | Descrição |
| AddMessageFilter | Adiciona um filtro de mensagem para monitorar mensagens do Windows |
| DoEvents | Processa todas as mensagens do Windows atualmente na fila de mensagens |
| Exit() | Informa todas as mensagens que elas precisam encerrar e então fecha todas as janelas depois que as mensagens foram processadas |
| ExitThread | Sai do laço das mensagens na thread atual e fecha todas as janelas |
| FilterMessage | Executa qualquer filtro contra a mensagem da janela, e retorna uma copia da mensagem alterada |
| Restart | Encerra a aplicação e inicia uma nova instância imediatamente |
| Run() | Começa executando um laço de mensagem da aplicação padrão na thread atual e torna o formulário visível |
| SetSuspendState | Suspende ou hiberna o sistema, ou requisita que o sistema seja suspenso ou hiberne. |
Vamos agora aos exemplos de uso.
Nota: Vou mostrar também o código na linguagem C#.
Recursos usados :
Criando a solução no VS 2013 Express Edition
Abra o VS 2013 Express for Windows desktop e clique em New Project;
A seguir selecione Visual Studio Solutions -> Blank Solution;
Informe o nome Usando_ApplicationClass e clique no botão OK;

Agora vamos incluir um novo projeto na solução.
No menu FILE clique em Add -> New Project e escolha a linguagem VB .NET e o template Windows Forms;
Informe o nome VBNET_ApplicationClass e clique em Add;

No formulário form1.vb do projeto vamos incluir os seguintes controles a partir da ToolBox:
1 TextBox - txtDados , Multiline=True
1 Button - btnObterInfo
1 TextBox - txtInfo1 - Multiline=True
1 Button - btnIdioma
1 TextBox - txtInfo2 - Multiline=True
1 Button - btnEmpresaProduto
Disponha os controles no formulário conforme o leiaute da figura abaixo:

No formulário Form1.vb vamos incluir o código abaixo no evento Click de cada botão de comando:
1- Obter informações dos caminhos da aplicação
Private Sub btnObterInfo_Click(sender As Object, e As EventArgs) Handles btnObterInfo.Click
Try
txtDados.Text += "CommonAppDataPath : " + Application.CommonAppDataPath + vbNewLine
txtDados.Text += "ExecutablePath : " + Application.ExecutablePath + vbNewLine
txtDados.Text += "LocalUserAppDataPath : " + Application.LocalUserAppDataPath + vbNewLine
txtDados.Text += "StartupPath : " + Application.StartupPath + vbNewLine
txtDados.Text += "UserAppDataPath : " + Application.UserAppDataPath + vbNewLine
Catch ex As Exception
MessageBox.Show("Erro : " + ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
|
private void btnObterInfo_Click(object sender, EventArgs e)
{
try {
txtDados.Text += "CommonAppDataPath : " + Application.CommonAppDataPath + Constants.vbNewLine;
txtDados.Text += "ExecutablePath : " + Application.ExecutablePath + Constants.vbNewLine;
txtDados.Text += "LocalUserAppDataPath : " + Application.LocalUserAppDataPath + Constants.vbNewLine;
txtDados.Text += "StartupPath : " + Application.StartupPath + Constants.vbNewLine;
txtDados.Text += "UserAppDataPath : " + Application.UserAppDataPath + Constants.vbNewLine;
} catch (Exception ex) {
MessageBox.Show("Erro : " + ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
|
2- Obter informações de Idioma da aplicação
Private Sub btnIdioma_Click(sender As Object, e As EventArgs) Handles btnIdioma.Click
Try
txtInfo1.Text += "CurrentCulture : " + Application.CurrentCulture.ToString + vbNewLine
txtInfo1.Text += "CurrentInputLanguage : " + Application.CurrentInputLanguage.ToString + vbNewLine
Catch ex As Exception
MessageBox.Show("Erro : " + ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
|
private void btnIdioma_Click(object sender, EventArgs e)
{
try {
txtInfo1.Text += "CurrentCulture : " + Application.CurrentCulture.ToString + Constants.vbNewLine;
txtInfo1.Text += "CurrentInputLanguage : " + Application.CurrentInputLanguage.ToString + Constants.vbNewLine;
} catch (Exception ex) {
MessageBox.Show("Erro : " + ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
|
3- Obter informações da Empresa e Produto
Private Sub btnProduto_Click(sender As Object, e As EventArgs) Handles btnEmpresaProduto.Click
Try
txtInfo2.Text += "CompanyName : " + Application.CompanyName.ToString + vbNewLine
txtInfo2.Text += "ProductName : " + Application.ProductName.ToString + vbNewLine
txtInfo2.Text += "ProductVersion : " + Application.ProductVersion.ToString + vbNewLine
Catch ex As Exception
MessageBox.Show("Erro : " + ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
|
private void btnProduto_Click(object sender, EventArgs e)
{
try {
txtInfo2.Text += "CompanyName : " + Application.CompanyName.ToString + Constants.vbNewLine;
txtInfo2.Text += "ProductName : " + Application.ProductName.ToString + Constants.vbNewLine;
txtInfo2.Text += "ProductVersion : " + Application.ProductVersion.ToString + Constants.vbNewLine;
} catch (Exception ex) {
MessageBox.Show("Erro : " + ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
|
Executando o projeto e clicando nos botões de comando iremos obter:

Pegue o
projeto completo aqui :
Usando_ApplicationClass.zip
Eu sou a videira verdadeira, e meu Pai é o
lavrador.
Toda a vara em mim, que não dá fruto, a tira; e limpa toda aquela que dá fruto,
para que dê mais fruto.
João 15:1,2
|
Veja os
Destaques e novidades do SUPER DVD Visual Basic
(sempre atualizado) : clique e confira !
Quer migrar para o VB .NET ?
Quer aprender C# ??
Quer aprender os conceitos da Programação Orientada a objetos ? Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ? |
Gostou ?
Compartilhe no Facebook
Compartilhe no Twitter
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#
VB .NET - Passando valores entre formulários - Macoratti.net