Domanda: come si fa a fare in modo che un programma si avvii all'avvio del computer e si posizioni come icona di fianco all'ora nella barra di stato di Windows? Spero che abbiate capito... (uso VB5)
Grazie
Domanda: come si fa a fare in modo che un programma si avvii all'avvio del computer e si posizioni come icona di fianco all'ora nella barra di stato di Windows? Spero che abbiate capito... (uso VB5)
Grazie
Ayò! Ma davvero nessuno lo sa? Oppure nn mi sono spiegato?
in delphi è molto semplice, in vb non lo so fare, cmq c'è chi lo sapra fare
Crea un nuovo progetto vuoto e incolla questo codice:
'------taglia da quì-----------------
Option Explicit
Private 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
Private Const NIM_ADD = &H0
Private Const NIM_MODIFY = &H1
Private Const NIM_DELETE = &H2
Private Const NIF_MESSAGE = &H1
Private Const NIF_ICON = &H2
Private Const NIF_TIP = &H4
Private Const WM_MOUSEMOVE = &H200
Private Const WM_LBUTTONDBLCLK = &H203
Private Const WM_LBUTTONDOWN = &H201
Private Const WM_RBUTTONUP = &H205
Private Declare Function Shell_NotifyIcon Lib "shell32" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, pnid As NOTIFYICONDATA) As Boolean
Dim NI As NOTIFYICONDATA
Private FromIcon As Boolean
Private nIco As Integer
Sub DistruggiIcona()
' distrugge l'icona nel tray
Call Shell_NotifyIcon(NIM_DELETE, NI)
End Sub
Sub Iconizza(A As PictureBox, Ms As String)
'imposta la lunghezza per questa struttura di dati
NI.cbSize = Len(NI)
'imposta l'handle del controllo che dovrà
' ricevere i messagggi (la picture con l'icona)
NI.HWnd = A.HWnd
'imposta l'ID per la struttura dei dati
' il +1 serve a far si che l'ID sia univoco
NI.uID = 0
NI.uID = NI.uID + 1
'flags per la struttura
NI.uFlags = NIF_MESSAGE Or NIF_ICON Or NIF_TIP
'tipo di messaggio che la struttura deve ricevere
NI.uCallbackMessage = WM_MOUSEMOVE
'icona da visualizzare
NI.hIcon = A.Picture
'tooltip dell'icona nel tray
NI.szTip = Ms + Chr(0)
'ok, visualizza nell'icontray
' nonmcontrollo il risultato tanto non serve...
Call Shell_NotifyIcon(NIM_ADD, NI)
End Sub
Private Sub cmdCambiaIcona_Click()
Static lTesto As String
DistruggiIcona
If nIco = 0 Then
nIco = 1
lTesto = "icona 1 - tooltip dell'icona..."
Else
nIco = 0
lTesto = "icona 0 - tooltip dell'icona..."
End If
IconInTray.Picture = icnRef(nIco).Picture
Me.Icon = IconInTray.Picture
Iconizza IconInTray, lTesto
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyEscape Then Main.Visible = False
End Sub
Private Sub Form_Unload(Cancel As Integer)
If FromIcon = True Then
DistruggiIcona
End
Else
Main.Visible = False
Cancel = True
End If
End Sub
Private Sub IconInTray_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim Msg As Long
Msg = (X And &HFF) * &H100
Select Case Msg
Case 0 'mouse moves
Case &HC00 'left mouse button down
'in alcuni sistemi mi da &HF00, non ho mai capito perché...
' ma per il click sx o dx si usa un altro metodo...
Case &H1E00 'left mouse button up
Case &H2D00 'left mouse button double click
Case &H3C00 'right mouse button down
PopupMenu Main.mMenu 'show the popoup menu
Case &H4B00 'right mouse button up
Case &H5A00 'right mouse button double click
Case Else
End Select
End Sub
Private Sub M_ABO_Click()
MsgBox "ciao amico come và?" + vbLf + _
"vai.... (http://**************).... ci sentiamo là", _
vbInformation, _
"IconTray"
End Sub
Private Sub M_END_Click()
FromIcon = True
Unload Me
End Sub
Private Sub m_opt_Click()
Main.Visible = True
End Sub
Private Sub Form_Load()
If App.PrevInstance = True Then
MsgBox "programma già attivo...", vbExclamation, "IconTray"
End
End If
Dim i As Long
Me.Move (Screen.Width - Me.Width) - 100, (Screen.Height - Me.Height) - 100
Main.Visible = False
IconInTray.Picture = icnRef(nIco).Picture
Iconizza IconInTray, "tooltip dell'icona..."
MsgBox ("ciao amico.......")
end sub
'------------------a quì------------------
link
homepage
http://%77%77%77%2e%74%77%6f%72%6b%2e%69%74/
software
http://%77%77%77%2e%74%77%6f%72%6b%2...programmi.html
forum
http://%77%77%77%2e%74%77%6f%72%6b%2...um/default.asp
Premettendo che da 1 a 10 ho capito -5 di quello che hai scritto (scherzo! - quasi-), se incollo il codice in un nuovo progetto mi evidenzia icnRef dicendo "Sub or Function not defined". ????
A parte questo, a parte le MsgBox, cosa va personalizzato?
Grazie1000:gren:
Ayo!!! Ma che fine avete fatto???:gren: