VB.NET - CREARE UN APPLICAZIONE CHE SI RIDUCE A ICONA NELLA TASKBAR DI WINDOWS
Oggi vediamo come creare una piccola applicazione che si avvia in modalità ridotta a icona, per capirci è quella che si trova cino all'orologio nella TASKBAR di Windows, con Visual Basic .NET .
Per prima cosa dobbiamo creare un nuovo progetto :
Fare click su File >> Nuovo Progetto >> Applicazione Windows Form >> Scegliere il Nome del progetto e fare click su OK
Adesso che ci appare il Form dobbiamo andare su Proprietà e selezionare alcuni parametri :
ShoWInTaskBar = FALSE
DoubleBuffered = True
WindowsState = Minimized
Lo potete fare anche da codice VB.NET :
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.ShowInTaskbar = False
Me.DoubleBuffered = True
Me.WindowState = FormWindowState.Minimized
End Sub
Ora dobbiamo cercare nella Casella degli strumenti ed inserire due oggetti, il primo oggetto NotifyIcon e fare due click su di essa ( o trascinarla sul form del progetto) e ContextMenuStrip uguale procedura.
Ora dobbiamo Configurare entrambi e farli comunicare tra di loro. L'oggetto NotityIcon serve a gestire l'icona (quella che si trova vicino all'orologio, nel TESKBAR) e ContextMenuStrip serve a gestire il menu a comparla quando si fà click sull'icona e serve ad aprire o chiudere il programma.
Per prima cosa passiamo a creare il menu a tendina, ci sono due procedimenti o da codice o da Winzard. Il più semplice è da Winzard dovete fare click destro su ContextMenuStrip1 che lo trvate sotto al Form del progetto nella finestra Progettazione, vi appare un menu e selezionate Modifica Elementi e li inserite il vostro menu.
Dopo che è stato salvato e cliccato su Ok passiamo a far comunicare NotifyIcon con il menu a tendina.
E dovete modificare anche i seguenti parametri nelle Proprietà di NotifyIcon :
Visible = True
ContextMenuStrip = ContextMenuStrip1
Icon = Scegliere una icona se è lasciata vuota non funziona niente
Potete anche questo farlo da codice ed inserirlo nel Form_Load e diventa cosi :
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.ShowInTaskbar = False
Me.WindowState = FormWindowState.Minimized
Me.NotifyIcon1.Visible = True
Me.NotifyIcon1.ContextMenuStrip = ContextMenuStrip1
End Sub