Foros del Web » Programación para mayores de 30 ;) » .NET »

Mover Cursor

Estas en el tema de Mover Cursor en el foro de .NET en Foros del Web. Hola gente, estoy tratando de hacer que a un evento determinado el mouse se mueva, lo estoy tratando sin exito de la siguiente forma. Dim ...
  #1 (permalink)  
Antiguo 07/12/2009, 09:30
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 10 meses
Puntos: 5
Mover Cursor

Hola gente, estoy tratando de hacer que a un evento determinado el mouse se mueva, lo estoy tratando sin exito de la siguiente forma.

Dim TamX As Integer = Screen.PrimaryScreen.Bounds.Width
Dim TamY As Integer = Screen.PrimaryScreen.Bounds.Height

de esta manera obtengo la resolucion de la pantalla

Private Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long

de esta forma muevo el mouse!!

para movero hacia la derecha "Eje X", creo que se deberia hacer un bucle que disminuya los valores en el eje X, el tema con esta idea es que tiene 2 problemas

1.- no se como obtener la posicion actual del mouse para poder manejar los valores.
2.- trate de hacer un bucle y me consume muchos recursos del CPU.

alguien me puede dar una ayudita?

gracias.
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
  #2 (permalink)  
Antiguo 07/12/2009, 09:48
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 14 años, 7 meses
Puntos: 16
Respuesta: Mover Cursor

Hola, usa la clase Point para indicar la posición.
Código vb.net:
Ver original
  1. Dim p As New Point(16, 20) 'Establece Posición
  2. Windows.Forms.Cursor.Position = p 'Asignarle la posición

Eso en el evento que desees, espero te ayude
__________________
Eduardo Peredo
Wigoin
  #3 (permalink)  
Antiguo 07/12/2009, 09:54
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 10 meses
Puntos: 5
Respuesta: Mover Cursor

hola, lo pruebo, pero y como puedo obtener la posicion actual del raton???

gracias.
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
  #4 (permalink)  
Antiguo 07/12/2009, 10:08
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 14 años, 7 meses
Puntos: 16
Respuesta: Mover Cursor

Código vb.net:
Ver original
  1. Dim posX, posY As Int32
  2. posx = Windows.Forms.Cursor.Position.X
  3. posy = Windows.Forms.Cursor.Position.Y

__________________
Eduardo Peredo
Wigoin
  #5 (permalink)  
Antiguo 07/12/2009, 10:25
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 10 meses
Puntos: 5
Respuesta: Mover Cursor

gracias, funciona pero con un detalle, el movimiento del cursos es muy rapido como puedo manejar la volocidad del desplazamiento, dejo el code:

Dim posX, posY As Int32
posX = Windows.Forms.Cursor.Position.X
posY = Windows.Forms.Cursor.Position.Y

Dim TamX As Integer = Screen.PrimaryScreen.Bounds.Width
Dim TamY As Integer = Screen.PrimaryScreen.Bounds.Height

For i = posX To TamX
Dim p As New Point(i + 1, posY)
Windows.Forms.Cursor.Position = p
Next
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
  #6 (permalink)  
Antiguo 07/12/2009, 10:38
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 14 años, 7 meses
Puntos: 16
Respuesta: Mover Cursor

e...e..... pues no, hasta acá quedé yo, no sé como cambiar la "velocidad".
Lo que podrías hacer es detener el proceso por un tiempo, algo asi:
Código vb.net:
Ver original
  1. For i = posX To TamX
  2. Dim p As New Point(i + 1, posY)
  3. Windows.Forms.Cursor.Position = p
  4. Threading.Thread.Sleep(1) 'Esto le dará el efecto de que va más lento.
  5. Next

Quizá te pueda servir, saludos.
__________________
Eduardo Peredo
Wigoin
  #7 (permalink)  
Antiguo 07/12/2009, 10:47
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 10 meses
Puntos: 5
Respuesta: Mover Cursor

gracias por tu ayuda, funciona relativamente bien. solo que se queda pegado a veces, debe ser por que espera a que se termine el bucle TamX

gracias.
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
  #8 (permalink)  
Antiguo 10/12/2009, 11:41
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 10 meses
Puntos: 5
Respuesta: Mover Cursor

hola gente, he tratado de hacerlo de la siguiente manera.

While Debug = "Raton en Area Inferior"
Dim i As Integer
Dim p As New Point(posX, i - 1)
Windows.Forms.Cursor.Position = p
'Threading.Thread.Sleep(1)
End While

pero se queda pegado tambien y a veces mueve el cursor.

alguna sugerencia???

gracias
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:08.