![](/img/emo1.gif)
![](/img/emo1.gif)
...quante seghe mentali per poi risolvere in modo tanto banale quanto efficace, non ci avrei mai e poi mai pensato....
Per il discorso dei "messaggi" la trovo una cosa molto utile quanto complessa...devo studiarci su...però ho capito più o meno come procedere...
Dal codice preso dal link che hai postato ho tolto tutto è inserito 'Console.WriteLine(m)' e poi ha tentavi trovo ciò su cui lavorare. Ad esempio per evitare l' apertura del menù contestuale quando si fa clic destro sulla barra del form il 'Console.WriteLine(m)' riporta:
msg=0x7b (WM_CONTEXTMENU) hwnd=0x580372 wparam=0x580372 lparam=0x8301aa result=0x0
la parte interessata è "0x7b", il tra parentesi è la descrizione e se si fa una ricerca si trova la pagina a riguardo su MSDN ed in questo caso riporta il codice "0x007B", sono in esadecimale...mentre quelli del link sono "interi", per non sbattersi a convertire basta eliminare "0x", gli 0 iniziali, ed aggiungere &H, quindi diventa "&H7B":
Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
'Console.WriteLine(m)
Dim WM_CONTEXTMENU As Integer = &H7B
If (m.Msg = WM_CONTEXTMENU) Then
Return
End If
MyBase.WndProc(m)
End Sub
Giusto per curiosità...se scrivi il codice sopra in una form con il solo 'Console.WriteLine(m)' l' ide scrive qualcosa nell' output?