bueno señores....
tengo una pregunta sobre el manejo de imagenes....
Resulta que tengo un picture que me reproduce un video con codigo api.
y necesito capturar la imegen para enviarla a un control de imagen y
tambien enviarla al portapapeles.
HE intentado con
Clipboard.Clear
Clipboard.SetData Picture2.Picture
image1.picture=picture2.picture
pero esto no funciona, algien me puede facilitar el code para hacer esto!!!! gracias
1 Timer1 (Interval = 50, Enabled = False)
1 Picture1
Nunca lo finalizes desde el STOP del Visual Basic porque se cuelga todo, ya que no libera la WebCam, para eso puse el QueryUnload
'API's para el manejo de imagen
Private Declare Function capCreateCaptureWindow Lib "avicap32.dll" Alias "capCreateCaptureWindowA" (ByVal lpszWindowName As String, ByVal dwStyle As Long, ByVal X As Long, ByVal Y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hwndParent As Long, ByVal nID As Long) As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function PrintWindow Lib "user32" (ByVal hWnd As Long, ByVal hdcBlt As Long, ByVal nFlags As Long) As Long
'Constantes de API avicapture
Private Const CONNECT As Long = 1034
Private Const DISCONNECT As Long = 1035
Private Const GET_FRAME As Long = 1084
Private Const WS_CHILD As Long = &H40000000
Private Const WS_VISIBLE As Long = &H10000000
'Handle de la WebCam
Private mCapHwnd As Long
Private Sub Form_Load()
mCapHwnd = capCreateCaptureWindow("BetterCam", WS_CHILD Or WS_VISIBLE, 0, 0, 320, 240, Picture1.hWnd, 0)
SendMessage mCapHwnd, CONNECT, 0, 0
Timer1.Enabled = True
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
Timer1.Enabled = False
SendMessage mCapHwnd, DISCONNECT, 0, 0
End Sub
Private Sub Timer1_Timer()
SendMessage mCapHwnd, GET_FRAME, 0, 0
PrintWindow mCapHwnd, Picture1.hdc, 0
End Sub
Espero que te sirva ::)
Sancho.Mazorka :P
viejo gracias pero esto es para capturar le imagen de la web cam, y yo nesecito es cojer la imagen que se este mostrando en un picture, y enviarla al portapapeles.
me explico mejor tengo un picture en el que estoy reproducioendo un video usando la api del Wmp, entonces como hago para capturar esta imagen
Agrega esto con las otras Constantes
Private Const COPY_IMAGE As Long = 1054
Al hacer click en el Form, la imagen se copia al portapapeles ::)
Private Sub Form_Click()
SendMessage mCapHwnd, COPY_IMAGE, 0, 0
End Sub
Sancho.Mazorka :¬¬