Como pegar o evento do teclado e mouse no windows ?  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
Leandro Vecchi
JavaBaby
[Avatar]

Membro desde: 27/08/2008 11:14:10
Mensagens: 86
Localização: Campo Grande - MS
Offline

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.

Antes copiar uma coisa boa do que inventar uma ruim.
[Email] [MSN]
is.matt.r
Thread.start()
[Avatar]

Membro desde: 30/11/2008 17:33:36
Mensagens: 32
Localização: no
Offline

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

E-mail: is.matt.r@gmail.com
[WWW] [Yahoo!] aim icon [MSN] [ICQ]
Leandro Vecchi
JavaBaby
[Avatar]

Membro desde: 27/08/2008 11:14:10
Mensagens: 86
Localização: Campo Grande - MS
Offline

is.matt.r wrote: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

Antes copiar uma coisa boa do que inventar uma ruim.
[Email] [MSN]
JAVA DIGAO
JavaBaby
[Avatar]

Membro desde: 20/08/2005 15:48:44
Mensagens: 84
Offline

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.
[Email] [MSN]
maior_abandonado
JWizard
[Avatar]

Membro desde: 03/09/2007 11:30:08
Mensagens: 2694
Localização: sp
Offline

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

espero ter ajudado...

falando nisso, caso seu problema tenha sido resolvido, edite o seu primeiro post e coloque um [RESOLVIDO] no titulo do tópico.
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

Leandro Vecchi wrote: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".


[WWW]
janjan
JavaEvangelist
[Avatar]

Membro desde: 25/09/2008 18:44:25
Mensagens: 434
Offline

this.componente.addAncestorListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
// TODO Auto-generated method stub
}
});


e pra pegar o evento do mouse eh bem similar

em vez de key coloque mouse

abraços
[Email] [MSN]
Leandro Vecchi
JavaBaby
[Avatar]

Membro desde: 27/08/2008 11:14:10
Mensagens: 86
Localização: Campo Grande - MS
Offline

janjan wrote:this.componente.addAncestorListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
// TODO Auto-generated method stub
}
});


e pra pegar o evento do mouse eh bem similar

em vez de key coloque mouse

abraços


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é?
[Email] [MSN]
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

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.
[WWW]
Leandro Vecchi
JavaBaby
[Avatar]

Membro desde: 27/08/2008 11:14:10
Mensagens: 86
Localização: Campo Grande - MS
Offline

thingol wrote: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.


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!
[Email] [MSN]
gcoletaalves
Entusiasta Java
[Avatar]

Membro desde: 07/01/2009 08:44:15
Mensagens: 16
Localização: Limeira-SP
Offline

Leandro Vecchi, sei que o post é antigo! mas vc conseguiu?
[WWW] [MSN]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team