
Eu tento controlar a posição absoluta do meu mouse com uma posição fixa de dois eixoscontrole de video game. Quero que isso rode no Windows 7. Já tentei muitos programas diferentes como
- jmouse
- XPadder
- rato alegre
- alegria 2 rato
O mouse joy 2 funciona melhor para mim até agora, pois posso controlar os eixos x e y com a posição absoluta do joystick, mas me deparei com 2 problemas
- o mouse às vezes gagueja, mesmo quando não estou movendo o joystick
- Só posso definir o "eixo y para cima" e o "eixo y para baixo", de modo que haja um pequeno ângulo em torno da posição raiz do joystick, onde nenhum movimento do mouse é aplicado.
Para mim também funcionaria, se alguém souber uma maneira confiável de obter a posição exata deste joystick (no win7), então eu mesmo posso definir a posição do mouse.
A imprecisão do joystick é causada pelo software. Eu tenho o mesmo hardware funcionando corretamente no meu mac.
Responder1
Eu mesmo encontrei uma solução manipulando os eventos do joystick e a posição do mouse python
com pygame
ewin32api
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))
Esta pode não ser uma solução para todos, porque deve ser compilado e todas as dependências precisam ser incluídas. Mas desta forma é possível controlar todos os eventos do mouse com muita precisão. É um pequeno trecho de código e bastante simples. É baseado no pygame
loop de eventos simples.