• Viernes 8 de Noviembre de 2024, 07:05

Autor Tema:  Api's Para El Control Del Puntero Del Raton  (Leído 3118 veces)

remramon2007

  • Nuevo Miembro
  • *
  • Mensajes: 12
    • Ver Perfil
Api's Para El Control Del Puntero Del Raton
« en: Domingo 25 de Marzo de 2007, 23:16 »
0
hola gnete como estan tanto time??
bueno ando con un problemita y espero me lo puedan dar una mano... paso a contarles estoy desarrollando un programa en el cual muevo el puntero del mouse con una api de windows GetCursorPos y lo que no encuentro y no se si existe es si hay alguna o algun codigo que me permita simular que se presiono un boton del mouse por ej. posiciono el puntero del mouse sobre un icono del escritorio y preciono un tecla (por ejemplo enter) y hace lo mismo que si hubiese precionado el boton izquiero del raton y por ejemplo preciono el signo "+" y ocurre lo mismo que si hubiese precionado el boton izquierdo del mouse dos veces (doble clic).
es para un proyecto importante estoy desarrollando un soft y hard que pienso donar a una escuela para chicos con discapacidades motoras, asi que agradeceria mucho si alguien me puede tirar una ayuda.
gracias y aca dejo mi msn por si alguien me quiere pasar algo por correo remramon2007@hotmail.com
salu2 ramon  :hola:

luciano2

  • Miembro activo
  • **
  • Mensajes: 71
    • Ver Perfil
    • http://www.recursosvisualbasic.com.ar/
Re: Api's Para El Control Del Puntero Del Raton
« Respuesta #1 en: Miércoles 28 de Marzo de 2007, 03:11 »
0
Hola amigo, buscá ejemplos de las funciones mouse_event  y MouseEventEx

Pd: no se si habrá otras, seguro que si, pero con esas podés hacer lo buscás


...saludos






Recursos visual basic

Nuker

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Re: Api's Para El Control Del Puntero Del Raton
« Respuesta #2 en: Domingo 1 de Abril de 2007, 05:13 »
0
aja! alto BOT te estas haciendo AJAJJAJA

bueno, yo hice uno hace tiempo para un juego, te digo lo q me acuerdo porque el codigo lo perdi en un formateo

para mandar teclas... tenes q poner

SendKeys "{enter}" 'ese seria un enter
SendKeys "{tab}" ' esa seria la tecla tab


_______________________________________

bueno la verdad 0 memoria de como hacer un click asi q te lo busque... toma:


______________________________________________________

---En un módulo
Const WM_LBUTTONDOWN = &H201
Const WM_LBUTTONUP = &H202
Private Declare Function PostMessageBynum Lib "user32" Alias "PostMessageA" _
            (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal
lParam _
            As Long) As Long 'enviar mensajes al control
Private Declare Function SetCursorPos Lib "user32" (ByVal X As Long, ByVal _
             Y As Long) As Long 'posicionar el puntero del ratón
Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, _
            lpRect As RECT) As Long 'obtener la posición del control
Private Type RECT
         Left As Long
         Top As Long
         Right As Long
         Bottom As Long
End Type

'----- ahora el proceso :
Dim l As Long, PosX As Long, PosY As Long, PosXY As Long
Dim lpRect As RECT

'conocer las posición del botón relativa a la pantalla, en pixels
l = GetWindowRect(Command1.hwnd, lpRect)
'colocar el ratón sobre el centro del botón
PosX = lpRect.Left + ((lpRect.Right - lpRect.Left) / 2)
PosY = lpRect.Top + ((lpRect.Bottom - lpRect.Top) / 2)
l = SetCursorPos(PosX, PosY)
'obtener la posicion del centro del control relativa al propio control,
'en pixels
'no es obligatorio, es para que las coordenadas recibidas en el mousedown
'del control sean coherentes
'la posicion y va en la palabra alta y la x en la baja
PosXY = (PosY - lpRect.Top) * 65536 + (PosX - lpRect.Left)
'simular el click del ratón
l = PostMessageBynum(Command1.hwnd, WM_LBUTTONDOWN, 0&, PosXY)
l = PostMessageBynum(Command1.hwnd, WM_LBUTTONUP, 0&, PosXY)

'FIN! :P