getpixel()???

Cardoomx

Hola oye alguien sabe como coger el color de un pixel del monitor en c++

He estado mirando manuales y tal pero ninguno me va, alguien sabe como o me puede decir un buen manual?

Gracias

cabron

Dudo mucho que C++ tenga alguna función en la libreria estandar para coger un píxel de la pantalla ya que es algo particular de la plataforma.

Bajo Windows tendrías que mirar GDI o Direct3D.

x2

option Explicit
' Selección de color en zona seleccionada por puntero

private Type POINTAPI
x as Long
y as Long
End Type
'
private Declare Function GetPixel Lib "gdi32" (byval hdc as Long, _
byval x as Long, byval y as Long) as Long
private Declare Function GetCursorPos Lib "user32" _
(lpPoint as POINTAPI) as Long
private Declare Function GetWindowDC Lib "user32" (byval hwnd as Long) _
as Long
'
private Sub Form_Load()
Timer1.Interval = 100
End Sub
'
private Sub Timer1_Timer()
Dim tPOS as POINTAPI
Dim sTmp as string
Dim lColor as Long
Dim lDC as Long
'
lDC = GetWindowDC(0)
Call GetCursorPos(tPOS)
lColor = GetPixel(lDC, tPOS.x, tPOS.y)
Label2.BackColor = lColor
'

sTmp = Right$("000000" & Hex(lColor), 6)
Caption = "R:" & Right$(sTmp, 2) & " G:" &_
mid$(sTmp, 3, 2) & " B:" & Left$(sTmp, 2)
End Sub
'

Carcass

#3 Muy bonito, pero eso viene a no ser C++ XD

Cardoomx

mas bien xddd.

Hen graphics.h de borland en teoria vien de todo pero no lo encuentro x ningun sitio y no hay nada que este bien hecho en fin...

r2d2rigo

Carcass, pero podria compilarse en una DLL y asi usarla con C++, no? ;D

cabron

Pero mira que eres vagooo, ya te he dicho que lo puedes hacer con GDI, ahora solo es cuestión de mirar...

Supongo que si lo preguntas es por que no tienes ni idea de programar en Windows (ni MFC ni WinApi), así que aprender todo esto solo para obtener un píxel puede ser algo exagerado. Te voy a decir como se hace, pero no te acostumbres ^^

http://rafb.net/paste/results/LkVt7f91.html

Carcass

#6 Hombre... una DLL de COM para hacer eso me parece una salvajada, pero bueno... sí podría XD

x2

alternar es bueno

Usuarios habituales

  • x2
  • Carcass
  • cabron
  • r2d2rigo
  • Cardoomx