Как изменить изображение, нажав стрелки на клавиатуре? - PullRequest
0 голосов
/ 17 мая 2010

Я сделал один проект в Java. Теперь в этом конкретном модуле я показываю пользователю, поэтому я показываю ему инвентарный запас.

Теперь для этого.

Как вы увидите на скриншоте [я поставил скриншот, чтобы вы могли лучше понять].
Чтобы показать изображения, я создал одну таблицу и поместил в нее ярлыки, а затем установил значок на ярлыке.

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

Означает: пользователь перемещается по клавиатуре, затем он должен отражать в этой таблице [пользователь должен знать, что в данный момент выбрано], а затем, как только пользователь перемещается по событиям со стрелкой на клавиатуре, и затем нажимает ввод, тогда это изображение должно отражаться на большой метке.

Вот ссылка для этого снимка экрана .

1 Ответ

0 голосов
/ 17 мая 2010

Похоже, что нужно сделать два шага.

Сначала пользователь должен знать, какое изображение выбрано. К сожалению, я не могу помочь вам с этим, так как я не знаю, как вы отображаете эту сетку. С точки зрения пользовательского интерфейса, я бы предложил использовать ту белую границу, которая есть у вас в каждой ячейке, - поменять ее на черный, синий или любой другой, какой вам нравится, чтобы указать, что это выбранная ячейка. Кажется, вы используете JTable, и в этом случае вы можете написать TableCellRenderer (возможно, расширив DefaultTableCellRenderer ) и вызвать его метод setBackground ().

Тогда вам нужно прослушать ввод с клавиатуры. Эта часть не должна быть слишком плохой; напишите KeyListener и добавьте его в сам JTable. Для каждого ключевого события посмотрите, соответствует ли код клавиши клавишам со стрелками; если так, переместите свой курсор соответственно. Не забывайте следить за краями JTable.

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