NotifyIconQué es y cuándo se usa
Fecha: 20/Sep/2005 (17/Sep/2005)
|
NotifyIcon es un control que yo personalmente uso en Visual Basic.Net 2005 Express Edition no sólo para mostrar el ícono en la barra de tareas, sinó que posee otras funcionalidades más. Puede presentar un "Globo de diálogo":
Se compone de 3 partes (propiedades): BalloonTipIcon (ícono), en este caso con el valor Info; BalloonTipText (texto), con el valor "Bienvenido a Balloon" y BalloonTipTitle (título), con el valor "Bienvenido".
Lo llamamos con el método ShowBalloonTip que admite dos overloads: ShowBalloonTip(timeout As Integer) y ShowBalloonTip(timeout As Integer, tiptitle As String, tiptext As String, tipicon As System.Windows.Forms.ToolTipIcon).
timeout: el período de tiempo (en segundos) que se debería mostrar el "globo".
tiptitle: Título.
tiptext: Texto.
tipicon: Ícono.
Posee 3 eventos: BalloonTipClicked (cuando se hace click en el "globo"), BalloonTipClosed (cuando se cierra el "globo") y BalloonTipShown (cuando se muestra).
También al control NotifyIcon puede agregarse el control ContextMenuStrip.
Dados estos controles:
Controles
Valores
frmBalloon (Form) txtMensaje (TextBox) ReadOnly= True, MultiLine=True, ScrollBars=Vertical ntiBalloon (NotifyIcon) BalloonTipIcon=Info, BalloonTipText="Bienvenido a Balloon", BalloonTipTitle="Title", ContetMenuStrip=cmsBalloon cmsBalloon (ContextMenuStrip) tsiMinimizarAbrir (ToolStripMenuItem)
(es un ítem de cmsBalloon)
Esto es un ejemplo:
Private Sub frmBalloon_FormClosing(ByVal sender As Object, ByVal e As FormClosingEventArgs) Handles Me.FormClosing ntiBalloon.Visible = False End Sub Private Sub frmBalloon_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load ntiBalloon.ShowBalloonTip(5) End Sub Private Sub tsiMinimizarAbrir_Click(ByVal sender As Object, ByVal e As EventArgs) Handles tsiMinimizarAbrir.Click If tsiMinimizarAbrir.Text = "&Minimizar a la bandeja" Then tsiMinimizarAbrir.Text = "&Abrir" Me.Hide() Exit Sub Else tsiMinimizarAbrir.Text = "&Minimizar a la bandeja" Me.Show() Exit Sub End If End Sub Private Sub ntiBalloon_BalloonTipClicked(ByVal sender As Object, ByVal e As EventArgs) Handles ntiBalloon.BalloonTipClicked txtMensajes.Text &= "Se ha clickeado el globo" & Chr(13) & Chr(10) End Sub Private Sub ntiBalloon_BalloonTipClosed(ByVal sender As Object, ByVal e As EventArgs) Handles ntiBalloon.BalloonTipClosed txtMensajes.Text &= "Se ha cerrado el globo" & Chr(13) & Chr(10) End Sub Private Sub ntiBalloon_BalloonTipShown(ByVal sender As Object, ByVal e As EventArgs) Handles ntiBalloon.BalloonTipShown txtMensajes.Text &= "Se ha abierto el globo" & Chr(13) & Chr(10) End Sub Private Sub ntiBalloon_DoubleClick(ByVal sender As Object, ByVal e As EventArgs) Handles ntiBalloon.DoubleClick tsiMinimizarAbrir_Click(sender, e) End SubComo podemos ver, NotifyIcon tiene muchos usos.
Recuerda que esto está hecho en base a Visual Basic.Net 2005, incluyendo el código de ejemplo.
Es importante destacar que este control es generalmente usado en los casos de que la aplicación tiene que estar ejecutándose sin que se vea el formulario, y enviando mensajes en el "globo" al usuario. Y, cuando quieras que el formulario se vea, enlazas un ContextMenuStrip al control con la opción de mostrar el formulario. Le puedes agregar imágenes a los ítems del ContextMenuStrip.
Espacios de nombres usados en el código de este artículo:
Fichero con el código de ejemplo: bryant1410_Balloon.zip - Tamaño 14,8 KB