以下為模塊代碼 
Option Explicit  
Public Const MAX_TOOLTIP As Integer = 64  
Public Const NIF_ICON = &H2  
Public Const NIF_MESSAGE = &H1  
Public Const NIF_TIP = &H4  
Public Const NIM_ADD = &H0  
Public Const NIM_DELETE = &H2  
Public Const WM_MOUSEMOVE = &H200  
Public Const WM_LBUTTONDOWN = &H201  
Public Const WM_LBUTTONUP = &H202  
Public Const WM_LBUTTONDBLCLK = &H203  
Public Const WM_RBUTTONDOWN = &H204  
Public Const WM_RBUTTONUP = &H205  
Public Const WM_RBUTTONDBLCLK = &H206  
Public Const SW_RESTORE = 9  
Public Const SW_HIDE = 0  
Public nfIconData As NOTIFYICONDATA  
Public Type NOTIFYICONDATA  
 cbSize As Long  
 hWnd As Long  
 uID As Long  
 uFlags As Long  
 uCallbackMessage As Long  
 hIcon As Long  
 szTip As String * MAX_TOOLTIP  
End Type  
Public Declare Function ShowWindow Lib "user32" (ByVal hWnd As Long, ByVal nCmdShow As Long) As Long  
Public Declare Function Shell_NotifyIcon Lib "shell32.dll" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As Long  
 
 
 
 
 
 
以下為 form_load內代碼 Form  
 
 
 
Private Sub Form_Load()  
  With nfIconData  
    .hWnd = Me.hWnd  
    .uID = Me.Icon  
    .uFlags = NIF_ICON Or NIF_MESSAGE Or NIF_TIP  
    .uCallbackMessage = WM_MOUSEMOVE  
    .hIcon = Me.Icon.Handle  
    .szTip = App.Title + "(版本 " & App.Major & "." & App.Minor & "." & App.Revision & ")" & vbNullChar  
    .cbSize = Len(nfIconData)  
  End With  
  Call Shell_NotifyIcon(NIM_ADD, nfIconData)  
  Me.Hide  
End Sub  
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)  
Call Shell_NotifyIcon(NIM_DELETE, nfIconData)  
End Sub  
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)  
  Dim lMsg As Single  
  lMsg = X / Screen.TwipsPerPixelX  
  Select Case lMsg  
    Case WM_LBUTTONUP  
      ShowWindow Me.hWnd, SW_RESTORE  
  End Select  
End Sub |