Meu primeiro contato com o Visual Basic 2005
Estamos praticamente deixando o ano de 2005 e adentrando em 2006, e, eu não podia deixar de dar uma 'olhada' na nova versão do Visual Basic: o Visual Basic 2005 , ou , VB8. Andei tão atarefado com minha monografia neste últimos 6 meses e creio que esta será um boa desculpa por esta falha. Antes tarde do nunca... não é mesmo. ?
Bem, para começar baixei a versão Express Edition no link : http://msdn.microsoft.com/vstudio/express/vb/default.aspx e já vou avisando: você vai precisar de uma conexão rápida pois é oferecido um kit mínimo para instalação que inclui o download do NET Framework 2.0, do Visual Basic 2005 e do SQL Server 2005. Na verdade, primeiro é feito um download de um arquivo de instalação que em seguida irá instalar os componentes selecionados. (Por falta de espaço em disco, baixei somente o Visual Basic 2005 e o NET Framework 2.0)
Obs: A versão VB 2005 Express é gratuita por um ano , até novembro de 2006. Basta se registrar e pronto...
Se possuir o Windows 98 , esqueça pois na lista de requerimentos consta que ele pode ser instalado no : Windows XP, Windows 2000, Windows Server e Windows Vista requerendo, para a configuração de download indicada, meros 1.3 GB. (Outra coisa que para mim foi sensível: quanto mais memória você tiver melhor será o desempenho )
Existe uma recomendação expressa para que versões betas do SQL Server 2005, Visual Studio 2005 e NET Framework 2.0 sejam removidas antes de proceder a instalação do Kit.
Antes de prosseguir vou falar um pouco sobre a origem da família de produtos Express. Na verdade é uma estratégia da Microsoft para difundir a estratégia .NET oferecendo ferramentas com recursos poderosos , de fácil aprendizagem e a um custo acessível a entusiastas, aprendizes, hobistas e quem deseja começar sem ter que fazer um alto investimento inicial. Nas palavras da Microsoft:
"O Visual Basic 2005 Express Edition, que foi criado com um foco na produtividade, é ideal para os programadores novatos ou casuais, estudantes ou qualquer pessoa com experiência anterior em programação Visual Basic"
Na verdade a Microsoft dividiu suas ferramentas de desenvolvimento da seguinte forma:
Visual Studio Team Suite | Arquitetos, Testers, Analistas, Gerentes |
Visual Studio Professional Edition | Profissionais, Consultores, Programadores |
Visual Studio Academic Edition / Visual Studio Tools for Office | Estudantes e professores |
Visual Studio Express ( C# VB C++ J# Web) | Aprendizes , entusiastas , hobistas |
Os produtos Express são compostos pelas seguintes ferramentas:
Visual Web Developer 2005 Express Edition - http://go.microsoft.com/?linkid=2676894
Visual Basic 2005 Express Edition - http://go.microsoft.com/?linkid=2676890
Visual C# 2005 Express Edition - http://go.microsoft.com/?linkid=2676890
Visual C++ 2005 Express Edition - http://go.microsoft.com/?linkid=2676890
SQL Server 2005 Express Edition - http://msdn.microsoft.com/vstudio/express/sql/default.aspx
Após a instalação fui logo abrindo o VB 2005 e criando uma aplicação do tipo Windows Application clicando na opção : Create Project na página Inicial - Start Page. A janela New Project esta mais arrumada e intuitiva, e, você pode ver todos os tipos de projetos oferecidos.
O tradicional formulário padrão - form1 , a janela Solution Explorer e a janela de Properties foram exibidas. Até aqui , nada de novo.
Mas espere, dando uma olhada melhor na janela Solution Explorer podemos ver que além do formulário padrão foi criado o item My Project. Clicando no item temos as configurações do projeto conforme podemos ver na figura abaixo.
Não resisti e solicitei a exibição da ToolBox ,e, surpresa !! Uma barra de ferramentas finalmente com controles agrupados por categoria. Clique em uma categoria e os seus componentes estarão à vista. (Já notei que existem novos componentes como o DataGridView)
A esta altura resolvi verificar se o meu VS.NET 2003 estaria ainda funcionando. Abrir o VS.NET 2003 e estava tudo lá como dantes.
Voltando a aplicação, abri a categoria Common Controls, e os velhos componentes: Label, Button, TextBox, ListBox, ListView, ComboBox, PictureBox, TreeView, ProgressBar, para citar só os mais usados, estavam todos lá em ordem alfabética.
Inclui um controle Button e ao incluir um componente TextBox notei outra novidade: as SnapLines.
Notou a aparência estilo Windows XP dos controles ||||| |
|
Criando
Menus Incrementados com MenuStrip
|
|
Lembra do controle MaskedTextBox ???
Pois ele voltou e melhorado... trazendo uma relação de sugestões para máscaras que você pode definir...
Criando layout através de tabelas com o TableLayoutPanel
Se você já criou algum site sabe a importância das tabelas. O Controle TableLayoutPanel permite a criação de formulários mais organizados com muito facilidade.
Para não me alongar demais vou falar agora de um dos muitos recursos interessantes e que aumentam muito a produtividade do programador que é o My Namespace.
Imagine-se :
Estando apto para encontrar uma funcionalidade que você precisa dentre as centenas de classe fornecidas pelo .NET Framework de forma imediata.
Usando uma simples referência para ter acesso a tarefas que antes exigiram muitas linhas de código.
Sendo muito mais produtivo do que nas versões anteriores do Visual Basic
Pode se beliscar, você não esta sonhando... Com o namespace My tudo isto esta a seu alcance. Como ?
As classes do namespace My fornecem atalhos para as funcionalidades mais comumente usadas no .NET Framework. Além disto ele inclui funcionalidades que antes eram difíceis de encontrar, complicadas de usar ou simplesmente não estavam disponíveis sem você ter que apelar para as chamadas, com código não gerenciado, às APIs.
O Namespace My inclui as seguintes classes e cada uma delas inclui um número determinado de membros :
|
|
Abaixo um pequeno resumo de cada uma dos objetos disponíveis:
Objeto | Descrição |
---|---|
My.Application | Permite o acesso a informação sobre a aplicação e seus serviços. |
My.Computer | Permite o acesso ao computador host e seus recursos e serviços. |
My.Forms | Permite o acesso a todos os formulário do projeto atual. |
My.Log | Permite o acesso ao log da aplicação |
My.Request | Permite o acesso a requisição web atual |
My.Resources | Permite o acesso aos recursos |
My.Response | Permite o acesso a resposta atual da web. |
My.Settings | Permite o acesso a configurações a nível de aplicação e usuário. |
My.User | Permite o acesso ao contexto de segurança do usuário logado. |
My.WebServices | Permite o acesso aos Web Services XML referenciados pelo projeto atual. |
Agora vamos aos exemplos:
Como exemplo, cliquei no botão de comando - Button1 - e no evento Click digitei a palavra My seguida de um ponto: My. As figuras acima mostram como ficou fácil localizar recursos.
No exemplo, se desejamos tocar um arquivo de som com caminho e nome informado na caixa de texto TextBox1 teríamos o código :
Private Sub Button1_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles Button1.Click My.Computer.Audio.Play(TextBox1.Text) End Sub |
Informei um nome de arquivo inexistente de propósito e o VB 2005 disparou uma exceção exibindo uma janela com as possíveis causas e ajuda para contornar o problema.
|
È muita novidade para eu dar conta em apenas um artigo, por isso prometo continuar mostrando as novidades do VB 2005 no próximo artigo.
Mas vejamos mas alguns recursos do namespace My:
a-) Se desejar tocar um som do sistema basta usar: My.Computer.Audio.PlaySystemSound(Media.SystemSounds.Asterisk)
b-)
Precisando dar um ping em uma máquina ? É simples, primeiro verificamos
se a rede esta disponível, em seguida damos o ping na URL desejada, e, em caso
positivo exibimos a mensagem.
If My.Computer.Network.IsAvailable Then Try If My.Computer.Network.Ping("Http://www.macoratti.net") Then MsgBox(" O site Macoratti.net esta ativo !") Else MsgBox("O site Macoratti.net esta forma do ar") End If Catch ex As Exception MsgBox(ex.Message) End Try Else MsgBox(" a rede não esta disponível") End If
|
ou ainda fazer um download , assim :
If My.Computer.Network.IsAvailable Then My.Computer.Network.DownloadFile( "http://www.macoratti.com/log.txt", "c:\archives\serverlog.txt") End If |
c-) Quer criar um log para auditoria e
segurança do seu sistema ? Use o My.Application.Log:
Private Sub MyApplication_UnhandledException(ByVal sender As Object, ByVal e As UnhandledExceptionEventArgs) _ Handles Me.UnhandledException My.Application.Log.WriteException(e, TraceEventType.Critical, "Ocorreu um erro não tratado na aplicação.") End Sub |
d-) A classe My.User fornece informação sobre o usuário atual, incluindo o nome e a propriedade IsInRole. Abaixo um exemplo para exibir informações sobre o usuário(Nome) atual e verificar se o usuário é o administrador da máquina :
If My.User.IsAuthenticated Then MsgBox("Usuário autenticado !") If My.User.IsInRole("Administrators") Then MsgBox(My.User.Name & " é o administrador do sistema") Else MsgBox(My.User.Name & " Não é o administrador do sistema") End If Else MsgBox("Usuário Não autenticado !") End If |
e-) Podemos usar o namespace My para criar uma instância de um formulário ou referenciar um Web Service no projeto sem ter que criar uma instância da classe. Os objetos My.Forms e My.WebServices fornecem acesso aos formulários , fonte de dados, e Web Services XML usados pela sua aplicação. Sem ter que declarar e instanciar classes. A seguir um exemplo de como podemos exibir um formulário comparado com versões anteriores do VB:
Antes | VB 2005 |
Dim testForm
As New Form1 testForm.Show |
My.Forms.Form1.Show |
f-) O objeto My.Resource fornece acesso aos recursos da aplicação e permite retornar dinamicamente os recursos da aplicação. Você pode acessar o os arquivos do recurso da cultura especifica da aplicação. O código a seguir define o ícone do formulário como o ícone chamado TextIcone armazenado no arquivo de recurso da mesma:
Me.Icon = My.Resources.TesteIcone
g-) My.Application
retorna dados associados somente com a aplicação ou assembly atual. Abaixo um
exemplo retorna as informações do nome do assembly, caminho do diretório e
cultura da aplicação exibindo-as em um ListBox
ListBox1.Items.Add("Nome do Assembly : " & My.Application.Info.AssemblyName) ListBox1.Items.Add("Caminho do diretório : " & My.Application.Info.DirectoryPath) ListBox1.Items.Add("Cultura : " & My.Application.Culture.ToString()) |
Gostou ? Quer cursos grátis sobre o VB 2005 ? Então acesse o link abaixo :
Além destes recursos nos próximos artigos pretendo falar um pouco sobre os seguintes tópicos:
Os novos recursos de Acesso a Dados - Criação de uma aplicação completa no VB 2005 passo a passo
Click Once - O novo recurso para distribuir sua aplicação. Você não vai acreditar como ficou fácil esta tarefa no VB 2005.
Uma visão geral sobre os 30 novos controles que tem o objetivo de simplificar o desenvolvimento
Como ficou mais fácil codificar com os assistentes que ajudam a escrever o código
Parece que 2006 vai ser um ano de novidades , e que novidades...
Um feliz 2006 para todos os meus leitores, que o ano vindouro traga realização profissional, paz e felicidade...
José Carlos Macoratti