Proxy: la Proprietà per sollevare Eventi del mouse e della tastiera contemporaneamente in due Controlli: differenze tra le versioni

Da Gambas-it.org - Wikipedia.
Vai alla navigazione Vai alla ricerca
(Creata pagina con "In generale il ''Proxy'' è un elemento che fa da intermediario fra altri elementi, facendo da ''ponte'', e si sostituisce a uno o a più elementi. In Gambas un Controllo gra...")
 
Nessun oggetto della modifica
Riga 24: Riga 24:
  Public Sub Form<FONT Color=blue>_MouseDown()</font>
  Public Sub Form<FONT Color=blue>_MouseDown()</font>
   
   
  <FONT Color=gray>' ''Restituisce la distanza del puntatore del mouse dal margine sinistro del "Form"... <U><B>anche se si clicca sul "Button"</b></u>:''</font>
  <FONT Color=gray>' ''Restituisce la distanza del puntatore del mouse dal margine sinistro del "'''Form'''"... <U><B>anche se si clicca sul "Button"</b></u>:''</font>
   Print Mouse.X
   Print Mouse.X
   
   
  End
  End

Versione delle 18:37, 27 ago 2025

In generale il Proxy è un elemento che fa da intermediario fra altri elementi, facendo da ponte, e si sostituisce a uno o a più elementi.

In Gambas un Controllo grafico può avere il suo "Proxy", assegnando alla sua omonima Proprietà ".Proxy" l'Oggetto che farà appunto da suo Proxy.
Più in particolare , inserendo nel codice del programma taluni Eventi del mouse e della tastiera appartenenti al Controllo principale (ossia quello al quale è stato assegnato il suo Proxy), quando si solleva l'analogo Evento (del mouse o della tastiera) dell'Oggetto Proxy, viene sollevato contestualmente anche l'Evento, se previsto nel codice, del Controllo principale.
In tal caso all'interno della subroutine del Controllo principale Gambas avrà come punto di riferimento il Controllo principale.

Mostriamo un esempio esplicativo:

Public Sub Form_Open()

' Il "Button" diventa "Proxy" del "Form": ogni Evento del mouse o della tastiera, appartenente al "Button", che si solleverà, farà sollevare automaticamente l'analogo Evento del Form".
 Me.Proxy = Button1

End


Public Sub Button1_MouseDown()

' Restituisce la distanza del puntatore del mouse dal margine sinistro del "Button":
 Print Mouse.X

End


Public Sub Form_MouseDown()

' Restituisce la distanza del puntatore del mouse dal margine sinistro del "Form"... anche se si clicca sul "Button":
 Print Mouse.X

End