Newsgroup: it.comp.lang.visual-basic
Titolo: come riconoscere zona schermo

Salve ragazzi, dovrei trovare un modo per capire quando una zona dello 
schermo cambia colore,
ma non so da dove cominciare, forse è troppo difficile per me...
Avete da darmi qualche esempio, qualche indicazione?
Elisa

Declare Function GetPixel Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, _
    ByVal y As Long) As Long"elisa" <elis...@NOvirgilio.it> ha scritto nel
messaggio news:4370e2ea$0$1490$4faf...@reader2.news.tin.it...


     ByVal y As Long) As Long"elisa"
A me il tipo Long"elisa" non viene compilato...
Continuate pure a quotare con i piedi, anche da questo si vede l'attenzione
che dedicate al vostro lavoro.
Ciao
--
Reporting tool: 
http://www.neodatatype.net

 A me il tipo Long"elisa" non viene compilato...
Nemmeno a me.
E ho fatto anche un po' fatica a trovare il reply...
-- 
WWW.AKUMA.SPLINDER.COM
งง-Blog, funny, fashion-งง 

 ha scritto nel messaggio
news:43710380$0$22284$4faf...@reader1.news.tin.it...


    ByVal y As Long) As Long
Avrei trovato una cosa cosě, che mi funziona:
....................................................................
Private Declare Function GetPixel Lib "gdi32" (ByVal hdc As Long, ByVal x As 
Long, ByVal y As Long) As Long
Private Sub Form_Load()
Picture1.Picture = LoadPicture("c:\image.JPG")
End Sub
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, x As 
Single, y As Single)
    Label1.Caption = "The color you are over is &&H" & 
Hex(GetPixel(Picture1.hdc, x / Screen.TwipsPerPixelX, y / 
Screen.TwipsPerPixelY))
End Sub
......................................................................
Quello che mi occorre perň č che legga fuori dal form, sullo schermo.
Sono fuori strada?
Grazie per l'aiuto.
Elisa

 Sono fuori strada?
no, anzi ci hai preso, hai solo bisogno di un altro paio di api
vado a memoria : ReleaseDC e CaptureDC se non sbaglio.
In pratica in hdc tu gli devi passare l'handle del Desktop che trovi con 
CaptureDeviceContext , poi quando hai fatto devi liberare le risorse 
allocate con ReleaseDeviceContext.
-- 
[Gigio2k]
Accorcia i link gratis e in modo semplice :
G2kSnipUrl : 
http://www.g2kweb.it/?3015
---> No alla CONFISCA delle moto : 
http://www.maxkava.com/moto
 <--- 

 no, anzi ci hai preso, hai solo bisogno di un altro paio di api
saggiungo che ti conviene scaricarti la guida su Allapi (api-guide) cosi' 
hai la lista delle api con dichiarazione commenti e un esempio di utilizzo.


> news:4370ff9d$0$29608$4faf...@reader3.news.tin.it...
[snip]
Pensa io che mi faccio 10 ore al giorno d'ufficio... eppure non persevero 
nel quoting selvaggio.
Ciao 

 Grazie per l'aiuto.
Vediamo se le mie reminescenze sono corrette.
In effetti la strada è giusta.
Con GetDesktopWindow() ti trovi l'hWnd del desktop (che se non sbaglio
equivale comunque a usare l'hWnd = 0).
Con GetDC() trovi il Device Context del Desktop
Con GetPixel() trovi il colore del pixel dull'hDC del Desktop
Con ReleaseDC() (!!!Importante!!!) rilasci le risorse dell'hDC acquisito con
GetDC()
La cosa brutta è che il mouse viene intercettato solo se è su un form del
tuo progetto :)
Per ovviare a questo dovrebbe bastare "catturare" il mouse su un form in
questo modo con GetCapture(), SetCapture() e ReleaseCapture()
    ' Se non è già catturato dal mio form
    If (GetCapture <> hwnd) Then
        Call SetCapture(hwnd)
    End If
E ricordiamoci di rilasciare il mouse una volta finito:
    Call ReleaseCapture
