Como garantir um keyUp em Java?

Problema: Eu aperto CTRL, mudo de tela ou de programa e solto o CTRL. Então a tela inicial perde o keyUp e fica com o keyDown para sempre.

Estou tentando usar uma tecla como trigger, ou seja, o cara segura o CTRL para iniciar um evento e solta o CTRL para finalizar o evento. Não posso correr o risco de perder esse keyUp e ficar com o evento aberto pra sempre.

Tentei usar KeyListener, mas ficou bastante fácil perder o keyReleased !!!

Alguém tem alguma idéia ???

ja tentou alguma coisa com relação ao foco da janela? Tipo, se a janela perder o foco ( indo pra outra aplicação ) ela pára o processo iniciado com o keyDown do CRTL ?..
abraços…

Bruno