
Intento controlar la posición absoluta de mi mouse con un control de dos ejes fijo.palanca de mando. Quiero que esto se ejecute en Windows 7. Ya probé muchos programas diferentes como
- jmouse
- Xpadder
- Joymouse
- alegría 2 ratón
El mouse Joy 2 funciona mejor para mí hasta ahora, ya que puedo controlar los ejes x e y con la posición absoluta del joystick, pero encontré 2 problemas
- El mouse tartamudea a veces, incluso cuando no estoy moviendo el joystick.
- Sólo puedo configurar el "eje y hacia arriba" y el "eje y hacia abajo", de modo que haya un pequeño ángulo alrededor de la posición raíz del joystick, donde no se aplica ningún movimiento del mouse.
Para mí también funcionaría, si alguien conoce una manera confiable de obtener la posición exacta de este joystick (en win7), entonces puedo configurar la posición del mouse yo mismo.
La imprecisión del joystick se debe al software. Tengo el mismo hardware funcionando correctamente en mi mac.
Respuesta1
Yo mismo encontré una solución manejando los eventos del joystick y la posición del mouse python
con pygame
ywin32api
import pygame, sys,os
import win32api, win32con
from win32api import GetSystemMetrics
from pygame.locals import *
width = GetSystemMetrics (0)
height = GetSystemMetrics (1)
pygame.init()
pygame.joystick.init()
joystick = pygame.joystick.Joystick(0)
joystick = joystick.init()
while 1:
for event in pygame.event.get():
if event.type == QUIT:
sys.exit(0)
else:
if event.type == 7:
if event.axis==0:
a = (event.value + 1)/2
x,y = win32api.GetCursorPos()
win32api.SetCursorPos((x,int(a*height)))
elif event.axis==2:
a = (event.value + 1)/2
x, y = win32api.GetCursorPos()
win32api.SetCursorPos((int(a*width),y))
Puede que esta no sea una solución para todos, porque debe compilarse y deben incluirse todas las dependencias. Pero de esta manera, es posible controlar todos los eventos del mouse de manera muy precisa. Es un fragmento de código pequeño y bastante sencillo. Se basa en el pygame
bucle de eventos simple.