Newsgroup: it.comp.lang.visual-basic
Titolo: MouseMove

Ciao,
sto cercando di utilizzare l'evento Form_MouseMove in una form child , ma
l'evento non viene scatenato al movimento del mouse, qualcuno mi sa dire
perchè ?
Grazie

Impossibile!!!
Prova a fare questa cosa semplice:
- Aggiungi una label (Label1)
- Aggiungi questo codice
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single,
Y As Single)
    Label1 = X & "," & Y
    Label1.Refresh
End Sub
Sulla label dovrebbe apparirti la posizione (x,y) del mouse.
 Ciao, Vincenzo

 ha scritto nel messaggio
news:c41ndv$2cmj6r$1...@ID-207068.news.uni-berlin.de...



Formatta il PC!!! :-))
Ciao, Vincenzo

 l'evento non si scatena !!!
Ma il form_child su cui vuoi il mousemove ha lo stato attivo mentre ci 
passi sopra col mouse?
-- 
Rivolterò il mondo per trovarlo, e anche se andasse in Indocina uno dei 
nostri starà nascosto in una ciotola di riso pronto a sparargli nel culo.
(Pulp Fiction)

 ha scritto nel messaggio
news:c41ndv$2cmj6r$1...@ID-207068.news.uni-berlin.de...


 Di seguito mostro la routine che utilizzo per il gradiente
Cioč copri la form con delle labels. E perchč mai, quindi, il form
(completamente coperto) dovrebbe generare il MouseMove? Sai chi lo puň
generare, vero?!

 qualche idea ?
Sì. (La mia domanda era provocatoria)
Se copri l'intero form con delle labels, il form non può generare eventi,
perchè non "sente/vede" il mouse.
Il MouseMove verrà generaro dalla label su cui il mouse viene mosso...


 ha scritto nel messaggio
news:c4459n$2e8fid$1...@ID-174464.news.uni-berlin.de...


 ma sarà la stessa cosa?
Dipenda da quello che vuoi fare...
L'evento si scatena sulla label sulla quale sta/si muove il mouse. Dal tuo
codice parrebbe di dedurre che le labels sono tutte con lo stesso nome e
indexate, quindi l'evento (codice) da gestire è uno solo, poi dal parametro
Index puoi sapere quel è la label che l'ha ricevuto/scatenato. Se devi usare
gli altri parametri dell'evento, per esempio X e Y, tieni conto che tali
coordinate sono riferite all'interno della label, non del form...
PS: Si scrive sotto al messaggio quotato.


 >
ok grazie mille

 qualche idea ?
Per il gradiente di posso dare una sub che avevo fatto tempo fa proprio per
quel motivo.
Togli tutta l'immondizia che hai messo sul form per cercare di risolvere
questo problema e richiama questa sub nell'evento _Paint se AutoRedraw è
False oppure in _Resize se AutoRedraw è True (AutoRedraw = True
consigliato).
Lascio a te il compito di
- cercare nell'api viewer tutto ciò che a VB non piace di questo codice ;)
- trovare altre possibilità di sfumature: oggi il colore è tutto gestito
dalle righe
                Grad = CInt(i / SH * 220) + 10
                .ForeColor = RGB(&HFF - Grad, &HFF - Grad, &HFF - Grad / 3)
Ciao
--- Codice ---
Private Sub Sfondo(ByVal iType As Integer)
    Dim P As POINTAPI
    Dim i As Integer
    Dim SH As Integer
    Dim SW As Integer
    Dim hDC As Long
    Dim Grad As Integer
    With Me
    If iType = 0 Then
        SH = .Height '/ ty
        SW = .Width * 2 '/ Tx
        hDC = .hDC
        If (adGetDeviceColorCount(.hDC) > 256) Then
            For i = 1 To SH
                Grad = CInt(i / SH * 220) + 10
                .ForeColor = RGB(&HFF - Grad, &HFF - Grad, &HFF - Grad / 3)
                #If Win32 Then
                   MoveToEx hDC, 0, i, P
                #Else
                   MoveToEx hDC, 0, i
                #End If
                LineTo hDC, SW, i
            Next i
        Else
            .BackColor = RGB(&H9F, &H9F, &HFF)
        End If
    Else
        .BackColor = vbWhite
    End If
    If .AutoRedraw Then .Refresh
    End With
End Sub
Function adGetDeviceColorCount(ByVal hDc As Long) As Long
    Const PLANES = 14
    Const BITSPIXEL = 12
    Dim nc As Double
    nc = GetDeviceCaps(hDc, PLANES) * 2 ^ GetDeviceCaps(hDc, BITSPIXEL)
    If (nc > &H7FFFFFFF) Then
        adGetDeviceColorCount = -1
    Else
        adGetDeviceColorCount = CLng(nc)
    End If
End Function
--
Math Parser : 
http://www.neodatatype.net
Sito Comune : 
http://www.it-lang-vb.net

 Grazie...provo