Ver Mensaje Individual
  #2 (permalink)  
Antiguo 21/12/2009, 19:39
Avatar de pkj
pkj
 
Fecha de Ingreso: julio-2006
Ubicación: Órbita sincrónica
Mensajes: 899
Antigüedad: 17 años, 10 meses
Puntos: 29
Respuesta: Mover Mouse Con PictureBox

Creo que lo que pides se saca así:

Código vb:
Ver original
  1. Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
  2.   Dim PosRealX As Single
  3.   Dim PosRealY As Single
  4.   Dim Difer As Double
  5.  
  6.   Difer = Screen.Width / Picture1.ScaleWidth
  7.   PosRealX = X * Difer
  8.  
  9.   Difer = Screen.Height / Picture1.ScaleHeight
  10.   PosRealY = Y * Difer
  11.  
  12. End Sub
Aunque si quieres usar las coordenadas con GetCursorPos creo tienes que dividir el resultado por TwipsPerPixel:

Código vb:
Ver original
  1. Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
  2.   Dim PosRealX As Single
  3.   Dim PosRealY As Single
  4.   Dim Difer As Double
  5.  
  6.   Difer = Screen.Width / Picture1.ScaleWidth
  7.   PosRealX = X * Difer / Screen.TwipsPerPixelX
  8.  
  9.   Difer = Screen.Height / Picture1.ScaleHeight
  10.   PosRealY = Y * Difer / Screen.TwipsPerPixelY
  11.  
  12. End Sub
Por cierto, solo sirve con PictureBox. Si usas Images te encontrarás con que no tienen propiedad ScaleHeight y ScaleWidth y no he encontrado equivalente, así que he tenido que aprender primero como escalar una imagen en un picturebox

El problema está en pinchar donde quieres sin mover el ratón.
Yo no he conseguido nada más que pinchar con el botón derecho y desplegar el menú, solo que el menú me aparece debajo del ratón, en lugar de en la ventana donde he pinchado.

Espero que tengas mas suerte. Si lo consigues cuentanos como lo has hecho.

Saludos
__________________
No hay preguntas tontas, solo gente estup..., ¡No!, ¿como era? No hay gente que pregunte a tontos... ¡Nooo!... ¡Vaya cabeza!