home *** CD-ROM | disk | FTP | other *** search
/ Planet Source Code Jumbo …e CD Visual Basic 1 to 7 / 1_2002.ISO / Data / Zips / CODE_UPLOAD1259312112000.psc / modSysTrayBas.bas < prev    next >
Encoding:
BASIC Source File  |  2000-12-11  |  2.5 KB  |  89 lines

  1. Attribute VB_Name = "modSysTrayBas"
  2.  
  3. Public nid As NOTIFYICONDATA
  4. Public Declare Function Shell_NotifyIcon Lib "shell32" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, pnid As NOTIFYICONDATA) As Boolean
  5. Public Const WM_CHAR = &H102
  6. Public Const WM_SETTEXT = &HC
  7. Public Const WM_USER = &H400
  8. Public Const WM_KEYDOWN = &H100
  9. Public Const WM_KEYUP = &H101
  10. Public Const WM_LBUTTONDOWN = &H201
  11. Public Const WM_CLOSE = &H10
  12. Public Const WM_COMMAND = &H111
  13. Public Const WM_CLEAR = &H303
  14. Public Const WM_DESTROY = &H2
  15. Public Const WM_GETTEXT = &HD
  16. Public Const WM_GETTEXTLENGTH = &HE
  17. Public Type NOTIFYICONDATA
  18.     cbSize As Long
  19.     hwnd As Long
  20.     uId As Long
  21.     uFlags As Long
  22.     uCallBackMessage As Long
  23.     hIcon As Long
  24.     szTip As String * 64
  25.     End Type
  26.  
  27.     Public Const NIM_ADD = &H0
  28.     Public Const NIM_MODIFY = &H1
  29.     Public Const NIM_DELETE = &H2
  30.     Public Const NIF_MESSAGE = &H1
  31.     Public Const NIF_ICON = &H2
  32.     Public Const NIF_TIP = &H4
  33.     Public Const WM_MOUSEMOVE = &H200
  34.  
  35. Public Declare Function SetForegroundWindow Lib "user32" (ByVal hwnd As Long) As Long
  36.  
  37. '__________________________________________________
  38. ' Scope  : 
  39. ' Type   : Sub
  40. ' Name   : InitializeTrayIcon
  41. ' Params : 
  42. ' Returns: Nothing
  43. ' Desc   : The Sub uses parameters  for InitializeTrayIcon and returns Nothing.
  44. '__________________________________________________
  45. ' History
  46. ' CDK: 20001112: Added Error Trapping & Comments using
  47. '        Auto-Code Commenter
  48. '__________________________________________________
  49. Sub InitializeTrayIcon()
  50.     On Error GoTo Proc_Err
  51.     Const csProcName As String = "InitializeTrayIcon"
  52.  
  53.       With nid
  54.         .cbSize = Len(nid)
  55.         .hwnd = frmNetSender.hwnd
  56.         .uId = vbNull
  57.         .uFlags = NIF_ICON Or NIF_TIP Or NIF_MESSAGE
  58.         .uCallBackMessage = WM_MOUSEMOVE
  59.         .szTip = App.Title & vbNullChar
  60.         .hIcon = frmNetSender.Icon
  61.     End With
  62.     
  63.     Shell_NotifyIcon NIM_ADD, nid
  64.  
  65. Proc_Exit:
  66.     GoSub Proc_Cleanup
  67.     Exit Sub
  68.  
  69. Proc_Cleanup:
  70.     On Error Resume Next
  71.     'Place any cleanup of instantiated objects here    
  72.     On Error GoTo 0
  73.     Return
  74.  
  75. Proc_Err:
  76.     Dim lErrNum As String, sErrSource As String, sErrDesc As String
  77.     lErrNum = VBA.Err.Number
  78.     sErrSource = VBA.Err.Source & vbcrlf & "modSysTrayBas->"  & csProcName
  79.     sErrDesc = VBA.Err.Description
  80.     Resume Proc_Err_Continue
  81.     
  82. Proc_Err_Continue:
  83.     GoSub Proc_Cleanup
  84.     Err.Raise Number:=lErrNum, Source:=sErrSource, Description:=sErrDesc
  85.     Exit Sub
  86.     
  87. End Sub
  88.  
  89.