SUBCLASSING
Ci sono dei passaggi che non ho capito molto bene come per esempio i valori addizionali wparam e lparam (32768 e – 32767) che sono stati messi nell’ API SendMessage: sono valori casuali o no? Perché proprio -32767 e non 1 ad esempio?
Nel tuo codice, quando la funzione WndProc controlla questi valori, ho notato che l’ultimo valore (lparam) non corrispondeva mai a –32767 ma il valore cambia sempre. Sono un po’ confusa essendo principiante.
Allora per far funzionare il codice ho impostato il valore wparam a 1 mentre lparam a &0 (il tuo codice è giustissimo –credo- ma l’ho dovuto modificare in base al mio grado di intendimento ma non so se ho fatto bene o meno) in modo che mi controlli solo il valore wparam e in modo da passargli un messaggio diverso a seconda del parametro. Sbaglio facendo cosi? Se si perché?
codice:
' Window Procedure personalizzata:
Function WndProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
' Se riceve un messaggio WM_CUSTOM
If uMsg = WM_NULL Then
' verifica wParam e lParam
MsgBox wParam & "/" & lParam
If wParam = 2 Then
' QUI METTI L'ICONA SULLA TRAY
MsgBox "QUI METTI L'ICONA SULLA TRAY !!!"
End If
If wParam = 1 Then
' QUI METTI L'ICONA SULLA TRAY
MsgBox "vaaaaaaaaaaaaaaaa!!!"
End If
End If
WndProc = CallWindowProc(OldProcAddr, hwnd, uMsg, wParam, lParam)
End Function
Cmq la questione del subclassing penso possa risolvere un altro problema che ho già postato tempo fa riguardo la scrittura nella console DOS attuale (vedi post http://forum.html.it/forum/showthrea...hreadid=702406 )
Se potete aiutatemi, grazie