Trims buat om Djuliar & PutraVB atas source codenya..
buat om Gyus, saya sertakan source codenya di bawah ini, dpt dari googling jg
--------
Modul :
--------
'user defined type required by Shell_NotifyIcon API call
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
'constants required by Shell_NotifyIcon API call:
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
Public Const WM_MOUSEMOVE = &H200
Public Const WM_LBUTTONDOWN = &H201 'Button down
Public Const WM_LBUTTONUP = &H202 'Button up
Public Const WM_LBUTTONDBLCLK = &H203 'Double-click
Public Const WM_RBUTTONDOWN = &H204 'Button down
Public Const WM_RBUTTONUP = &H205 'Button up
Public Const WM_RBUTTONDBLCLK = &H206 'Double-click
Public Declare Function SetForegroundWindow Lib "user32" _
(ByVal hwnd As Long) As Long
Public Declare Function Shell_NotifyIcon Lib "shell32" _
Alias "Shell_NotifyIconA" _
(ByVal dwMessage As Long, pnid As NOTIFYICONDATA) As Boolean
Public nid As NOTIFYICONDATA
----------------
Form_Load
----------------
Me.Show
Me.Refresh
With nid
.cbSize = Len(nid)
.hwnd = Me.hwnd
.uId = vbNull
.uFlags = NIF_ICON Or NIF_TIP Or NIF_MESSAGE
.uCallBackMessage = WM_MOUSEMOVE
.hIcon = Me.Icon
.szTip = "Program Aplikasi ..... " & vbNullChar
End With
Shell_NotifyIcon NIM_ADD, nid
---------------------
Form_MouseMove
---------------------
Dim Result As Long
Dim msg As Long
'the value of X will vary depending upon the scalemode setting
If Me.ScaleMode = vbPixels Then
msg = X
Else
msg = X / Screen.TwipsPerPixelX
End If
Select Case msg
Case WM_LBUTTONUP '514 restore form window
Me.WindowState = vbNormal
Result = SetForegroundWindow(Me.hwnd)
Me.Show
Case WM_LBUTTONDBLCLK '515 restore form window
Me.WindowState = vbNormal
Result = SetForegroundWindow(Me.hwnd)
Me.Show
Case WM_RBUTTONUP '517 display popup menu
Result = SetForegroundWindow(Me.hwnd)
Me.PopupMenu Me.mPopupSys
End Select
Private Sub mPopExit_Click()
'called when user clicks the popup menu Exit command
Dim jwb As String
jwb = MsgBox("Anda yakin ingin keluar dari Program Aplikasi ? ", vbQuestion + vbYesNo, "Exit to Windows")
If jwb = vbYes Then
End
End If
End Sub
Private Sub mPopRestore_Click()
'called when the user clicks the popup menu Restore command
Dim Result As Long
Me.WindowState = vbMaximized
Result = SetForegroundWindow(Me.hwnd)
Me.Show
End Sub
---------------------------------
Form Unload / Terminate :
---------------------------------
Shell_NotifyIcon NIM_DELETE, nid
Form_Resize atau klik tombol Hide to SysTray, hny menggunakan perintah Me.Hide
Karena Form yg saya gunakan hny satu, dan itu pun Border-Style = 0-None, kemudian user jg bisa pindah task seperti ke ms. excel atau explorer dgn tekan tombol ALT + TAB.
Mohon koreksi atas coding saya diatas ya Master
Trims