Java KeyListener не работает - PullRequest
       1

Java KeyListener не работает

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

Мне только что удалось заставить KeyListener работать в пустом приложении, но затем я попытался внедрить его в свое приложение, и оно просто не работает, независимо от того, сколько я ввожу ключей!Друг сказал мне, что это потому, что у меня есть кнопки (JButton) в приложении (и я реализую метод actionPerformed), может кто-нибудь объяснить мне, почему это происходит (и как это исправить)?Да, проблема в фокусе, и я нашел решение на некоторых форумах, и решение очень простое.Это путем добавления: setFocusable (true);после, setVisible (true);в классе, который расширяет JFrame.

1 Ответ

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

К какому компоненту вы добавляете KeyListener?Я думаю, что если вы хотите прослушать KeyEvents во всем калькуляторе, вы должны добавить его в контейнер, в котором находятся кнопки.

Но я верю, что только компонент, имеющий фокус, получает KeyEvents, так что я не знаю, может ли контейнер иметь фокус или если события передаются их родителю, если фокус находится на кнопкахкалькулятор.

Вы можете решить эту проблему, добавив keyListener к контейнеру, выполняющему вещи (печать символов и символов), а также к кнопкам и текстовому полю, продвигая событие в свой контейнер

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...