Differenze tra le versioni di "Sollevare l'Evento MouseMove() di un Oggetto grafico spostando su di esso il mouse senza tenere premuto un suo tasto"

Da Gambas-it.org - Wikipedia.
Riga 6: Riga 6:
 
  Public Sub Form_Open()
 
  Public Sub Form_Open()
 
   
 
   
   Me<FONT Color=red>'''.Tracking'''</font> = <FONT Color=red>True</font>
+
   <FONT Color=darkorange>Me</font><FONT Color=red>'''.Tracking'''</font> = <FONT Color=red>True</font>
 
    
 
    
 
  End
 
  End
 
   
 
   
 
   
 
   
  Public Sub Form<FONT Color=green>_MouseMove()</font>
+
  Public Sub <FONT Color=darkorange>Form</font><FONT Color=green>_MouseMove()</font>
 
   
 
   
 
   Me.'''Title''' = CStr(Mouse.X) & " - " & CStr(Mouse.Y)
 
   Me.'''Title''' = CStr(Mouse.X) & " - " & CStr(Mouse.Y)
 +
 +
End
 +
In quest'altro esempio useremo una ''TextArea''.
 +
<BR>Pertanto, passando con il puntatore del mouse (senza premere alcun tasto del mouse) sulla ''TextArea'', sarà sollevato l'Evento "_MouseMove()" di questo Controllo grafico.
 +
  Public Sub Form_Open()
 +
 +
  <FONT Color=darkorange>TextArea1</font><FONT Color=red>'''.Tracking'''</font> = <FONT Color=red>True</font>
 +
 
 +
End
 +
 +
 +
Public Sub <FONT Color=darkorange>TextArea1</font><FONT Color=green>_MouseMove()</font>
 +
 +
  Me.Title = CStr(Mouse.X) & " - " & CStr(Mouse.Y)
 
   
 
   
 
  End
 
  End

Versione delle 17:08, 3 nov 2024

Normalmente, affinché sia sollevato l'Evento "_MouseMove()" di un Oggetto grafico, bisogna spostare il mouse su tale Oggetto, tenendo premuto un tasto del mouse.
Per sollevare quel medesimo Evento senza la necessità di tenere premuto su un tasto del mouse, pertanto al solo semplice passaggio, al solo scorrere del puntatore del mouse sulla superficie del Controllo grafico in questione, bisogna assegnare il valore TRUE alla Proprietà ".Tracking" di tale Oggetto grafico, se da esso posseduta. [nota 1]

Mostriamo un semplice esempio, usando come Oggetto il Form principale.
Verranno intercettati i valori delle Proprietà ".X" e ".Y" del Mouse al suo spostarsi sul Form (ovviamente - come già specificato - ciò avverrà senza premere alcun tasto del mouse):

Public Sub Form_Open()

 Me.Tracking = True
 
End


Public Sub Form_MouseMove()

 Me.Title = CStr(Mouse.X) & " - " & CStr(Mouse.Y)

End

In quest'altro esempio useremo una TextArea.
Pertanto, passando con il puntatore del mouse (senza premere alcun tasto del mouse) sulla TextArea, sarà sollevato l'Evento "_MouseMove()" di questo Controllo grafico.

 Public Sub Form_Open()

 TextArea1.Tracking = True
 
End


Public Sub TextArea1_MouseMove()

 Me.Title = CStr(Mouse.X) & " - " & CStr(Mouse.Y)

End


Note

[1] vedere anche le seguenti pagine: