Adicionar ícone na área de notificação C#
Na dica de hoje mostrarei como adicionar um ícone na área de notificações do windows (Aquela perto do relógio).
Começando com o objeto do ícone.
System.Windows.Forms.NotifyIcon meuIcone;
Depois indicando o local do arquivo de ícone.
Obs. O .ico é a extensão específica de ícones.
string caminhoIcon = @"D:\meuIcone.ico";
Inicializando e configurando o ícone.
meuIcone = new System.Windows.Forms.NotifyIcon();
Este é o texto que aparecerá quando o usuário colocar o mouse sobre o ícone (tooltip).
meuIcone.Text = "Título do meu ícone";
Setando se o ícone estará visível ou não. É bastante útil quando deseja-se que o ícone apareça em uma determinada situação ou evento.
meuIcone.Visible = true;
Desenhando o ícone com a imagem carregada anteriormente
meuIcone.Icon = new System.Drawing.Icon(caminhoIcon);
Pronto seu ícone será exibido.
Mas podemos adicionar algumas propriedades a mais e mais funcionalidades para ele do que somente exibí-lo.
Como por exemplo adicionar eventos. Este é um evento de duplo clique do mouse.
meuIcone.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(meuIcone_MouseDoubleClick);
Ou então adicionar um menu de contexto (É aquele que aparece quando clicamos com o botão direito do mouse sobre ele).
Vou mostrar um menu com dois itens, um para exibir seu aplicativo e outro para enviar um comando de fechar.
System.Windows.Forms.MenuItem[] items = new System.Windows.Forms.MenuItem[2];
System.Windows.Forms.MenuItem item = new System.Windows.Forms.MenuItem("Abrir o " + Globals.assData.Name);
System.Windows.Forms.MenuItem item2 = new System.Windows.Forms.MenuItem("Sair do " + Globals.assData.Name);
item.Click += item_Click;
item2.Click += item2_Click;
items[0] = item;
items[1] = item2;
meuIcone.ContextMenu = new System.Windows.Forms.ContextMenu(items);
E estes são os eventos de clique simples que serão acionado no menu de contexto.
private void item2_Click(object sender, EventArgs e)
{
Close();
}
private void item_Click(object sender, EventArgs e)
{
this.Show();
this.WindowState = System.Windows.WindowState.Normal;
}
Também é possível adicionar uma mensagem em forma de balloon (Aquelas mensagens que geralmente são temporárias e aparecem em cima do ícone)
meuIcone.BalloonTipText = "Meu aplicativo"; //Texto exibido no balloon
meuIcone.ShowBalloonTip(400); //tempo em que o balloon será exibido
0 comentários:
Postar um comentário