Como pegar o evento do teclado e mouse no windows?
10 respostas
L
Leandro_Vecchi
Ae pessoal, tenho um probleminha …
Tenho um sistema que possui login e senha para entrar, só que por segurança quero que quando o usuário ficar 5 minutos sem usar o computador (Sistema Operacional) ele bloqueie o ‘meu’ sistema. Para isso eu precisaria pegar o evento do mouse e do teclado no Windows e ver quanto tempo ele vai ficar sem efetuar esses eventos, aí quando ele ficar 5 minutos sem usar eu vou bloquear o meu sistema, então para isso eu preciso pegar os eventos do mouse e teclado em java no meu sistema para com thread ou timer eu conseguir ver o tempo que ele está sem usar o sistema operacional.
Alguem já fez ou sabe como pegar esses eventos?
ah… se tem que mecher com Math.getCurrentTime(); ele vai retornar um tem em milisegundos
ai vc cria um emplements na classe ActionListnner, faz override dos metodos, add a tela e coloca o getCurrentTime rodar qd o mouse do kara tiver fora da tela, se ficar os 5 minutos, vc joga a tela de login;
bom creio eu ter ajudado um pouquinho
L
Leandro_Vecchi
is.matt.r:
ah… se tem que mecher com Math.getCurrentTime(); ele vai retornar um tem em milisegundos
ai vc cria um emplements na classe ActionListnner, faz override dos metodos, add a tela e coloca o getCurrentTime rodar qd o mouse do kara tiver fora da tela, se ficar os 5 minutos, vc joga a tela de login;
bom creio eu ter ajudado um pouquinho
Entendi, mas na verdade eu queria que bloqueasse depois de 5 minutos que ele não mexeu no mouse e teclado no sistema operacional, porque aí eu vou saber que ele na verdade não está usando o PC.
Mas obrigado… vou fazer isso que voce me falou e vou postar pra ver que que deu ehhee
vlw
J
JAVA_DIGAO
Nesse caso vc teria que implementar listeners para recuperar o valores tanto do mouse ou do teclado.
E tb implementar uma thread no momento que faça o login no sistema, a partir disso vc tem o tempo que ficou inativo e como recuperar o evento.
M
maior_abandonado
bom… se eu intendi direito, isso que estão propondo não vai funcionar, não é bem o q o criador do tópico quer, isso só vai funcionar dentro da janela do sistema em si…feita em java, não de janelas do proprio SO como o windows explorer ou o konkeror por exemplo…
eu confesso que não sei como se faz mais tenho quase certeza q vc vaiter que usa JNI, e alguma DLL/biblioteca de código nativo… tem um tópico de um keyLogger feito em java por ai…da uma pesquisada ai no forum… de repente te ajuda
T
thingol
Leandro Vecchi:
Ae pessoal, tenho um probleminha …
Tenho um sistema que possui login e senha para entrar, só que por segurança quero que quando o usuário ficar 5 minutos sem usar o computador (Sistema Operacional) ele bloqueie o ‘meu’ sistema. Para isso eu precisaria pegar o evento do mouse e do teclado no Windows e ver quanto tempo ele vai ficar sem efetuar esses eventos, aí quando ele ficar 5 minutos sem usar eu vou bloquear o meu sistema, então para isso eu preciso pegar os eventos do mouse e teclado em java no meu sistema para com thread ou timer eu conseguir ver o tempo que ele está sem usar o sistema operacional.
Alguem já fez ou sabe como pegar esses eventos?
Obrigado.
https://desafionetbeans.dev.java.net/01-rsi.html - o Wagner fez algo semelhante ao que você quer, só que em vez de travar o sistema, mostra uma janelinha dizendo “Pare um pouquinho e vá fazer uma pausa”.
J
janjan
this.componente.addAncestorListener(newKeyAdapter(){<aclass="mention" href="/u/override">@Override</a>public void keyPressed(KeyEvent e) {// TODO Auto-generated method stub}});
então, mas não é isso que eu tava querendo, eu quero ver o tempo que ele ficou sem mexer no mouse e no teclado no Sistema Operacional…
isso seria para fazer eventos no java né?
T
thingol
Você quer configurar o Windows de forma que o screen saver entre em 5 minutos e solicitando senha para sair do screen saver? Acho que isso pode ser feito com um script - acho mais seguro que você controlar tudo através de sua aplicação.
L
Leandro_Vecchi
Então, é exatamente controlar pela minha aplicação que eu quero, mas eu quero ver o tempo que ele ficou sem mexer no sistema operacional, porque se eu as vezes ele pode minimizar meu sistema (em java) e continuar mexendo no SO, então nesse caso eu não quero travar a minha aplicação, só quero travar a minha aplicação quando ele ficar uns 5 minutos sem mexer no SO o que vai significar que ele provavelmente saiu do computador e deixou o meu sistema aberto …
Acho que achei um jeito de fazer, assim que eu conseguir eu posto aqui =D
obrigado!
G
gcoletaalves
Leandro Vecchi, sei que o post é antigo! mas vc conseguiu?