Como bloquear o mouse para um monitor em uma configuração de vários monitores. (Em um Mac)

4

Eu estive procurando uma maneira de bloquear o mouse para um monitor em uma configuração de exibição dupla ou mais.

[Edit:] O ​​aplicativo que estou programando será executado somente no modo de tela cheia, a qualquer momento. Isso significa que não importa se a restrição do mouse é para a própria janela do jogo ou apenas em um monitor, independentemente dos aplicativos sendo executados. [/ Editar]

Estou programando em flash, e sei que até 11.2 sair, não pode ser feito em flash, então eu tenho que encontrar alguma maneira de fazê-lo no próprio Mac OS, software de terceiros ou através de hardware.

Eu estou procurando por todas e quaisquer sugestões sobre como realizar isso por qualquer meio, ou soluções alternativas para o Flash, se isso não pode ser feito.

Eu encontrei software de terceiros no Windows 7 que me permite fazer isso, no entanto não consegui encontrar um com suporte Mac.

Informações de fundo:

  • Usando o flash com o Adobe AIR
  • Aplicação em um Mac Mini
  • Aplicação é um jogo, um monitor mostra o jogo, o outro monitor tem um aplicativo separado em execução
  • Os dois aplicativos estão conectados por meio de um objeto localConnection.
  • Usando o AS3

Resumo da pergunta:

Como posso bloquear o mouse em um monitor em um monitor de vários monitores no OSX? Todas e quaisquer sugestões são bem vindas.

JonathonG
fonte
1
Seria conveniente para você manter o mouse dentro do jogo de tela cheia? janela , ou o cursor deve ser confinado ao monitor, independentemente do conteúdo do monitor? Os dois cenários provavelmente têm soluções diferentes.
Dan J
Qualquer situação fornece uma solução viável, já que o único propósito da máquina em que isso está sendo executado é exibir esse aplicativo (somente em tela cheia).
JonathonG
Quaisquer sugestões fáceis, mas mais baratas, além do EdgeCase?
teemue

Respostas:

5

enter image description here

fazer isso em sua preferência a chance de você tirar o mouse da tela atual é baixa

oo mo
fonte
3

Eu não posso dizer: você está tentando empacotar tal solução com seu código, para cada usuário do seu software? Ou você está procurando por um aplicativo que você pode usar para alcançar a funcionalidade desejada?

Aqui está uma solução para o último (Full Disclosure: eu sou o desenvolvedor!)

EdgeCase [Mac App Store]

enter image description here

Opções de cruzamento (alternar independentemente de acordo com o gosto):

  • Bounce na borda da tela
  • Aguarde 1/2 segundo
  • Segure [ctrl] ou [⌘]
  • Cruz ao arrastar

Opções avançadas:

  • Tecla de função inversa: As bordas limitadas estão ativas somente quando você segura a tecla de atalho.
  • Apenas na tela principal: O cursor só é limitado quando você está na tela principal com a barra de menus.

EdgeCase [Mac App Store]

pkamb
fonte
Isso ainda funciona? É um grande investimento só para descobrir se está quebrado. Eu compraria totalmente se funcionasse.
Dodekeract
1

Eu vou responder a minha própria pergunta por enquanto, já que parece já estar desaparecendo completamente fora dos holofotes.

Através de toda a minha pesquisa eu cheguei à conclusão de que não há maneira de fazer isso de forma limpa e simples. Eu poderia muito bem estar errado, mas depois de três dias procurando, eu ainda não encontrei uma resposta, então por enquanto vou assumir que não há um programa de terceiros existente para permitir isso em um Mac.

No entanto, alguém no estouro da pilha sugeriu que eu programasse um aplicativo básico para ser executado em segundo plano para atingir essa meta usando o Cocoa, e é isso que eu farei a menos que alguém encontre uma solução mais rápida / fácil / mais limpa e publique aqui .

Aqui está o post do estouro de pilha:

https://stackoverflow.com/questions/8188193/limiting-mouse-to-one-display-on-mac-potentially-using-cocoa/8188310#8188310

Eu vou estar monitorando isso apenas no caso de alguém responder a outra coisa além de mim.

JonathonG
fonte