VBcoders Guest



Don't have an account yet? Register
 


Forgot Password?



How to add an icon to the tray

by King (24 Submissions)
Category: Windows System Services
Compatability: Visual Basic 3.0
Difficulty: Unknown Difficulty
Date Added: Wed 3rd February 2021
Rating: (6 Votes)

One of the questions that occurs most often in the VB Q and A forum is how to add an icon to the tray area of the Windows 95 taskbar.This tip will show you how to add and delete the icon,and also trap the mouse events.

Assumes
Create two command buttons (command1 and command2) and a picture box (picture1) to the form. For the picture property of the Picture Box select the icon you want to be displayed in the tray.
API Declarations

Declare Function Shell_NotifyIcon Lib "shell32.dll" Alias _
"Shell_NotifyIconA" (ByVal dwMessage As Long, lpData As _
NOTIFYICONDATA) As Long
Public Type NOTIFYICONDATA
cbSize As Long
hwnd As Long
uID As Long
uFlags As Long
uCallbackMessage As Long
hIcon As Long
szTip As String * 64
End Type
Public Const NIM_ADD = &H0
Public Const NIM_MODIFY = &H1
Public Const NIM_DELETE = &H2
Public Const NIF_MESSAGE = &H1
Public Const NIF_ICON = &H2
Public Const NIF_TIP = &H4
'Make your own constant, e.g.:
Public Const NIF_DOALL = NIF_MESSAGE Or NIF_ICON Or NIF_TIP
Public Const WM_MOUSEMOVE = &H200
Public Const WM_LBUTTONDBLCLK = &H203
Public Const WM_LBUTTONDOWN = &H201
Public Const WM_RBUTTONDOWN = &H204

Rate How to add an icon to the tray

Public Sub CreateIcon()
       Dim Tic As NOTIFYICONDATA
       Tic.cbSize = Len(Tic)
       Tic.hwnd = Picture1.hwnd
       Tic.uID = 1&
       Tic.uFlags = NIF_DOALL
       Tic.uCallbackMessage = WM_MOUSEMOVE
       Tic.hIcon = Picture1.Picture
       Tic.szTip = "Visual Basic Demo Project" & Chr$(0)
       erg = Shell_NotifyIcon(NIM_ADD, Tic)
       End Sub
       Public Sub DeleteIcon()
       Dim Tic As NOTIFYICONDATA
       Tic.cbSize = Len(Tic)
       Tic.hwnd = Picture1.hwnd
       Tic.uID = 1&
       erg = Shell_NotifyIcon(NIM_DELETE, Tic)
       End Sub
Private Sub Command1_Click()
CreateIcon
End Sub
Private Sub Command2_Click()
DeleteIcon
End Sub
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
X = X / Screen.TwipsPerPixelX
       Select Case X
       Case WM_LBUTTONDOWN
       Caption = "Left Click"
       Case WM_RBUTTONDOWN
       Caption = "Right Click"
       Case WM_MOUSEMOVE
       Caption = "Move"
       Case WM_LBUTTONDBLCLK
       Caption = "Double Click"
       End Select
End Sub

Download this snippet    Add to My Saved Code

How to add an icon to the tray Comments

No comments have been posted about How to add an icon to the tray. Why not be the first to post a comment about How to add an icon to the tray.

Post your comment

Subject:
Message:
0/1000 characters