TODOPIC
Lenguajes de programación para PC => Visual Basic => Mensaje iniciado por: Trust en 20 de Agosto de 2008, 14:59:24
-
Hola a todos.
Estoy usando un programa para sacar la imagen de una webcam, me hace falta saber como obtener el valor del color de un punto.
Yo hago algo asi:
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
Text1.Text = Picture1.Point(x, y)
Text1.Refresh
End Sub
Tambien he probado con Getpixel de esta forma
Text1.Text = GetPixel(Picture1.hdc, x, y)
Pero no me funciona porque el contenedor de la imagen no se si es un picturebox, como es un programa que funciona a base de API pues estoy perdido. A la izquierda(en la barra de componentes) me aparece un control OLE que yo no he puesto. Supongo que por medio de API se introduce en el formulario.
Os pongo la direccion de la pagina web donde esta el programa.
Capturar la webcam (http://www.recursosvisualbasic.com.ar/htm/listado-api/222-capturar-webcam-con-sendmessage-capCreateCaptureWindow.htm)
Saludos.
-
Hola. El problema es que al iniciar la CAM, se pierde control sobre los eventos del contenedor en el cual se vuelcan las imagenes, por lo que el evento mouse_move deja de funcionar...Malo.
En fin, para obtener el valor del color de un pixel que está obteniendose de la webcam, podes hacer:
Private Declare Function GetPixel Lib "gdi32" (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long) As Long
Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
Text1.Text = GetPixel(GetDC(hwdc),x,y)
Donde x e y son dos valor de tipo long que debes ingresar.
Saludos.
-
Hola BrunoF, muchas gracias.
Me sale un error que pone variable no definida.
He probado a cambiar algo pero sigue sin funcionarme.
-
Que variable? whdc?
Yo me guie por el segundo ejemplo de los dos que hay en el link que pusiste.
Saludos.