VB.Net/GUI/Notify Icon Tray
Tray Icon Demo
<source lang="vbnet"> Imports System Imports System.Drawing Imports System.Data Imports System.IO Imports System.Collections Imports System.Windows.Forms Imports System.Drawing.Printing Public Class MainClass
Shared Sub Main() Dim form1 As Form = New Form1() Application.Run(form1) End Sub
End Class
Public Class Form1
Inherits System.Windows.Forms.Form Private _loadCalled As Boolean = False
- Region " Windows Form Designer generated code "
Public Sub New() MyBase.New() "This call is required by the Windows Form Designer. InitializeComponent() "Add any initialization after the InitializeComponent() call End Sub "Form overrides dispose to clean up the component list. Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) If disposing Then If Not (components Is Nothing) Then components.Dispose() End If End If MyBase.Dispose(disposing) End Sub "Required by the Windows Form Designer Private components As System.ruponentModel.IContainer "NOTE: The following procedure is required by the Windows Form Designer "It can be modified using the Windows Form Designer. "Do not modify it using the code editor. Friend WithEvents icnNotify As System.Windows.Forms.NotifyIcon <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent() Me.ruponents = New System.ruponentModel.Container() Dim resources As System.Resources.ResourceManager = New System.Resources.ResourceManager(GetType(Form1)) Me.icnNotify = New System.Windows.Forms.NotifyIcon(Me.ruponents) " "icnNotify " Me.icnNotify.Icon = New System.Drawing.Icon("test.ico") Me.icnNotify.Text = "Right-click me to view Favorites?" Me.icnNotify.Visible = True " "Form1 " Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13) Me.ClientSize = New System.Drawing.Size(292, 273) Me.Name = "Form1" Me.ShowInTaskbar = False Me.Text = "Form1" Me.WindowState = System.Windows.Forms.FormWindowState.Minimized End Sub
- End Region
Protected Overrides Sub OnVisibleChanged(ByVal e As System.EventArgs) If _loadCalled = False Then Return End If " if the user can see us, hide us... If Me.Visible = True Then Me.Visible = False End Sub Protected Overrides Sub OnLoad(ByVal e As System.EventArgs) Dim menu As New ContextMenu() menu.MenuItems.Add(New ActionMenuItem()) menu.MenuItems.Add("-") menu.MenuItems.Add(New ExitMenuItem()) icnNotify.ContextMenu = menu _loadCalled = True Me.Hide() End Sub
End Class Public Class ActionMenuItem
Inherits MenuItem " Constructor... Public Sub New() Text = "Some Action..." End Sub " OnClick... Protected Overrides Sub OnClick(ByVal e As System.EventArgs) MessageBox.Show("Action") End Sub
End Class Public Class ExitMenuItem
Inherits MenuItem " Constructor... Public Sub New() Text = "Exit" End Sub " OnClick... Protected Overrides Sub OnClick(ByVal e As System.EventArgs) Application.Exit() End Sub
End Class
</source>
Use Notify Icon
<source lang="vbnet"> Imports System Imports System.Runtime.InteropServices Imports System.Drawing Imports System.ruponentModel Imports System.Windows.Forms Imports System.IO Public Class MainClass
Shared Sub Main(ByVal args As String()) Dim myform As New Form1() Application.Run(myform) End Sub
End Class Public Class Form1
" Display the stop icon. Private Sub radStop_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles radStop.Click nicStatus.Icon = New Icon("test.ico") End Sub " Display the go icon. Private Sub radGo_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles radGo.Click nicStatus.Icon = New Icon("test.ico") End Sub
End Class
<Global.Microsoft.VisualBasic.rupilerServices.DesignerGenerated()> _ Partial Public Class Form1
Inherits System.Windows.Forms.Form "Form overrides dispose to clean up the component list. <System.Diagnostics.DebuggerNonUserCode()> _ Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) If disposing AndAlso components IsNot Nothing Then components.Dispose() End If MyBase.Dispose(disposing) End Sub "Required by the Windows Form Designer Private components As System.ruponentModel.IContainer "NOTE: The following procedure is required by the Windows Form Designer "It can be modified using the Windows Form Designer. "Do not modify it using the code editor. <System.Diagnostics.DebuggerStepThrough()> _ Private Sub InitializeComponent() Me.ruponents = New System.ruponentModel.Container Me.nicStatus = New System.Windows.Forms.NotifyIcon(Me.ruponents) Me.radStop = New System.Windows.Forms.RadioButton Me.radGo = New System.Windows.Forms.RadioButton Me.SuspendLayout() " "nicStatus " Me.nicStatus.Text = "NotifyIcon1" Me.nicStatus.Visible = True " "radStop " Me.radStop.AutoSize = True Me.radStop.Checked = True Me.radStop.Location = New System.Drawing.Point(16, 16) Me.radStop.Name = "radStop" Me.radStop.Size = New System.Drawing.Size(43, 17) Me.radStop.TabIndex = 0 Me.radStop.Text = "Stop" " "radGo " Me.radGo.AutoSize = True Me.radGo.Location = New System.Drawing.Point(112, 16) Me.radGo.Name = "radGo" Me.radGo.Size = New System.Drawing.Size(35, 17) Me.radGo.TabIndex = 1 Me.radGo.TabStop = False Me.radGo.Text = "Go" " "Form1 " Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.ClientSize = New System.Drawing.Size(292, 273) Me.Controls.Add(Me.radGo) Me.Controls.Add(Me.radStop) Me.Name = "Form1" Me.Text = "UseNotifyIcon" Me.ResumeLayout(False) Me.PerformLayout() End Sub Friend WithEvents nicStatus As System.Windows.Forms.NotifyIcon Friend WithEvents radStop As System.Windows.Forms.RadioButton Friend WithEvents radGo As System.Windows.Forms.RadioButton
End Class
</source>