VB  .NET -   Usando o Controle NotifyIcon

Até que enfim o VB oferece uma forma fácil de incluir e usar um ícone na barra de tarefas. Para isto basta usar o controle NotifyIcon  incluindo em sua bandeja de componentes e associar um ícone ao controle.  Vamos ao trabalho...

a - Inicie um novo projeto no Visual Studio.NET com as seguintes características (sinta-se a vontade para alterar a seu gosto.)

  1. Project Types : Visual Basic Projects
  2. Templates : Windows Application
  3. Name : NotifyIcon
  4. Location : c:\vbnet \vbnotifyico

b- No formulário padrão - form1.vb - insira o controle NotifyIcon a partir da caixa de ferramentas , e atribua um ícone ao controle na propriedade - Icon , conforme ilustrado abaixo:

Ao executar a sua aplicação , o ícone a ela associada pelo controle NotifyIcon é imediatamente exibido na barra de tarefas . Quando encerrar a aplicação o ícone sai automaticamente.

Podemos usar o controle NotifyIcon via código  , desta forma temos a flexibilidade de usar o ícone mesmo quando nenhum formulário estiver visível.

Veja o exemplo a seguir , o objeto inicial do aplicativo é a sub-rotina Main e não teremos portanto janelas sendo exibidas , ativamos o ícone quando o usuário clica no menu de contexto e exibimos o relógio :

Module Module1

       Public appicon As New NotifyIcon()

       Public menu_contexto As New ContextMenu()

 

    'definimos os eventos que vamos criar

       Public WithEvents mostra_relogio As New MenuItem("Relógio")

    Public WithEvents sai_app As New MenuItem("Sair")

 

            Public Sub main()

               'atribui o ícone que será usado

               Dim ico As New Icon("c:\teste\unilogo.ico")

               appicon.Icon = ico

                        

                   'poe os itens do menu no menu

               menu_contexto.MenuItems.Add(mostra_relogio)

               menu_contexto.MenuItems.Add(sai_app)

               appicon.ContextMenu = menu_contexto

 

                        'define o texto da dica

              appicon.Text = "Usando o NotifyIcon"

                       'exibe o icone

              appicon.Visible = True

                      'como nao temos formularios temos que usar o comando a seguir

              Application.Run()

              End Sub

 

         Public Sub sai_app_click(ByVal sender As Object, ByVal e As System.EventArgs) Handles sai_app.Click

               Application.Exit()

               End Sub

 

         Public Sub mostra_relogio_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles mostra_relogio.Click

              MessageBox.Show(Date.Now.ToString, "Date", MessageBoxButtons.OK)

               End Sub

End Module

 

Imagina o que você pode fazer com este recurso ??  até a próxima...

  Gostou ?   Compartilhe no Facebook   Compartilhe no Twitter

 

Referências:


José Carlos Macoratti