Ottenere il valore di un pixel sulla Scrivania

Da Gambas-it.org - Wikipedia.
Versione del 22 giu 2024 alle 15:32 di Vuott (Discussione | contributi)

(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

Per ottenere il valore di un pixel al di sotto del puntatore del mouse, si può adottare il seguente codice, che prevede il controllo ogni 10 millesimi di secondo. Durante il funzionamento del programma non è necessario premere alcun tasto del mouse: spostando il puntatore del mouse al di sopra della Scrivania e dei suoi elementi grafici presenti (icone dei file di desktop e altre finestre), verranno mostrati all'interno del bordo superiore del Form del programma Gambas le ccordinate x,y della posizione corrente del puntatore del mouse sulla Scrivania e il colore del pixel corrente posto al di sotto del puntatore.
Poiché si useranno alcune risorse della CLasse DesktopWindow, è necessario attivare anche il Componente gb.desktop.x11.
Per assegnare la finestra della Scrivania alla variabile di tipo DesktopWindow, bisognerà individuare preliminarmente il numero ID della Scrivania. [nota 1]

Private dw As DesktopWindow
Private Timer1 As Timer


Public Sub Form_Open()

 dw = New DesktopWindow(numero_ID_Scrivania)

 With Timer1 = New Timer As "Timer1"
   .Delay = 10
   .Start
 End With

End


Public Sub Timer1_Timer()

 Me.Title = Mouse.ScreenX & "  " & Mouse.ScreenY & "   " & 
            Hex(dw.GetScreenshot(True).Image[Mouse.ScreenX, Mouse.ScreenY], 6)
 
End


Note

[1] Il numero identificativo in rappresentazione esadecimale della Scrivania può essere conosciuto agevolmente lanciando da Terminale la seguente riga di comando:

~$ wmctrl -l