No subio... asi es que, aqui va el codigo...
En un MODULO:
Public 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
Global t As NOTIFYICONDATA
Global Const NIM_ADD = &H0
Global Const NIM_MODIFY = &H1
Global Const NIM_DELETE = &H2
Global Const NIF_MESSAGE = &H1
Global Const NIF_ICON = &H2
Global Const NIF_TIP = &H4
Global Const WM_MOUSEMOVE = &H200
En el formulario (llamalo ARBOLITO):
Crea un menu con las siguientes propiedades:
(el formato es CAPTION --> NAME)
Opciones --> mnuShell
Y dependiendo de este, los siguientes sub-menus:
Apagado --> mnuOff
Encendido --> mnuOn
Cerrar --> mnuClose
Acerca de ... --> mnuAcerca
En el formulario, coloca 3 labels, un boton llamado cmdOK, un timer1, y una matriz de controles picture (picture1), numeros del 0 al 4, y en cada uno de estos picture coloca un icono...
Dim I As Integer
Private Sub Command1_Click()
End Sub
Private Sub mnuAcerca_Click()
Me.Show
'Me.WindowState = 0
End Sub
Private Sub mnuClose_Click()
Shell_NotifyIcon NIM_DELETE, t
End
End Sub
Private Sub mnuOff_Click()
mnuOff.Checked = True
mnuOn.Checked = False
I = 0
t.hIcon = Picture1(I).Picture
t.szTip = "Felíz Navidad, les desea marianok" & Chr$(0)
Shell_NotifyIcon NIM_MODIFY, t
End Sub
Private Sub mnuOn_Click()
mnuOn.Checked = True
mnuOff.Checked = False
t.szTip = "Felíz Navidad, les desea marianok" & Chr$(0)
End Sub
Private Sub OK_Click()
'Me.WindowState = 1
Me.Hide
End Sub
Private Sub Picture1_MouseMove _
(Index As Integer, _
Button As Integer, _
Shift As Integer, _
X As Single, Y As Single)
If Hex(X) = "1E3C" Then
Arbolito.PopupMenu Arbolito.mnuShell
End If
End Sub
Private Sub Form_Load()
I = 0
t.cbSize = Len(t)
t.hWnd = Picture1(0).hWnd
t.uID = 1&
t.uFlags = NIF_MESSAGE Or _
NIF_ICON Or _
NIF_TIP
t.uCallbackMessage = WM_MOUSEMOVE
t.hIcon = Picture1(I).Picture
t.szTip = "Muy Felíz Navidad y Prospero Año Nuevo, les desea marianok" & Chr$(0)
Shell_NotifyIcon NIM_ADD, t
Me.Hide
End Sub
Private Sub Timer1_Timer()
If mnuOn.Checked Then
Rem Call NotifyIcon_Change(, " ")
I = I + 1: If I > 4 Then I = 0
t.hIcon = Picture1(I).Picture
Shell_NotifyIcon NIM_MODIFY, t
End If
End Sub
Despues de probar esto... seguro se te ocurre como hacer lo que necesitas...
SUERTE