Option ExplicitPrivate Declare Function Shell_NotifyIcon Lib "shell32.dll" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, pnid As NOTIFYICONDATA) As LongPrivate Type NOTIFYICONDATA        cbSize As Long
        
        hwnd As Long
        
        uID As Long
        
        uFlags As Long
        
        uCallbackMessage As Long
        
        hIcon As Long
        
        szTip As String * 64End TypePrivate Const NIM_ADD = &H0Private Const NIM_DELETE = &H2Private Const MOUSE_MOVED = &H1Private Const NIF_ICON = &H2Private Const NIF_TIP = &H4Private Const NIF_MESSAGE = &H1Private Const WM_MOUSEMOVE = &H200Private Const WM_LBUTTONDOWN = &H201Dim Ico As NOTIFYICONDATAPrivate Sub Command1_Click()  Unload Me
  
End SubPrivate Sub Command2_Click()  Me.Hide
  
End SubPrivate Sub Form_Load()  With Ico
  
    .cbSize = Len(Ico)
    
    .hIcon = Me.Icon
    
    .uID = 1
    
    .hwnd = Me.hwnd
    
    .uFlags = NIF_MESSAGE Or NIF_ICON Or NIF_TIP
        
    .uCallbackMessage = WM_MOUSEMOVE
    
    .szTip = "CDdoor" & Chr$(0)
    
  End With
  
  Call Shell_NotifyIcon(NIM_ADD, Ico)
    
End SubPrivate Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)  Dim L As Long
  
  L = X / Screen.TwipsPerPixelX
  
  If L = WM_LBUTTONDOWN Then
  
    Me.Show
    
  End If
  
End SubPrivate Sub Form_Unload(Cancel As Integer)  Call Shell_NotifyIcon(NIM_DELETE, Ico)
  
End Sub以上是实验代码,经测试能正常工作,不知道这个代码由没有什么BUG和问题,欢迎大家给出意见!