Блокировать java горячие клавиши, такие как alt + esc, control-alt-delete - PullRequest
2 голосов
/ 20 октября 2010

Я создаю приложение Java, и мне нужно заблокировать горячие клавиши, например Alt + Tab , Control + Alt + Удалить ... В основном тезисы. Мое приложение требует этого, потому что это приложение управления. Если решение на java невозможно, любой знает другой способ сделать это.

Спасибо тебе!

Edit1 : Я создаю «диспетчер компьютеров», который требует пароль. Если пароль не введен или введен неверно, пользователь ничего не может сделать на компьютере. Это работает как представление экрана входа в систему по умолчанию, но со многими пользователями. Понял?

Edit2 : После того, как пользователь введет пароль, он может использовать все (или некоторые, например, alt + tab :) эти горячие клавиши! Понял? [2]

Ответы [ 3 ]

2 голосов
/ 20 октября 2010

Вообще говоря, вы не можете, потому что эти ключи перехватываются операционной системой до того, как они попадают в Java.

Дайте нам больше информации об ОС и среде, в которой вы находитесь, и мы могли быпридумать обходные пути.

1 голос
/ 20 октября 2010

Одним из главных достоинств CTRL-ALT-DELETE является то, что он специально хочет не допустить переопределения приложениями их функциональности.Если бы это было не так, то любой мог бы написать приложение, которое вызывало себя при нажатии клавиши CTRL-ALT-DELETE и либо выглядело как приложение «изменить пароль», либо как заставка.В любом случае приложение сможет украсть пароли у людей.

1 голос
/ 20 октября 2010

Я не думаю, что есть простой, программный способ сделать это.

Если в JDK6 нет какого-то скрытого класса, я бы сказал, что эти комбинации обрабатываются ОС (которая в любом случае отлавливает нажатия клавиш).перед отправкой их в приложения), чтобы ваша ОС решала, что делать с нажатиями клавиш до Java

Если что-то существует, то это хак, не связанный с Java, но больше с реестром или подобными вещами:)

...