Создание горячих клавиш для формы свинга Java

Как создать горячие клавиши для формы, созданной с помощью java swing? Например, форма создана для деталей учащегося. Если я нажму ALT+N, курсор переместится на поле ввода имени.ALT+R означает, что курсор переместится на Reg. не вводите Field.same, например, как mark1(m1),mark(2) и т. д. В то же время форма содержит кнопки сохранения, кнопки выхода, если я нажимаю CTRL+S, означает, что будет выбрана кнопка Save.CTRL+X означает выход Кнопка выберет. Как это сделать?

3 ответа

См. Как использовать привязки клавиш, а затем использовать эти знания в сочетании с requestFocusInWindow(),


CTRL+X означает, что кнопка выхода выберет.

Смотрите также setMnemonic(char) для кнопок и setAccelerator(KeyStroke) для пунктов меню. Или, в более общем смысле, построение этих элементов управления с использованием Action это имеет настроенные значения.

означает, что если я нажму ALT+N означает, что курсор перейдет в это поле ввода имени

Обычно это делается с помощью пар JLabel/JTextField. Что-то вроде:

JLabel firstNameLabel = new JLabel("First Name");
JTextField firstNameTextField(15);
firstNameLabel.setLabelFor( firstNameTextField );
firstNameLabel.setDisplayedMnemonic( 'F' );
panel.add( firstNameLabel );
panel.add( firstNameTextField );

Затем с помощью Alt-F установите фокус на текстовое поле.

Связывание клавиш будет сделано автоматически для вас.

Пожалуйста, обратитесь по следующей ссылке

http://docs.oracle.com/javase/tutorial/uiswing/misc/keybinding.html Это может быть хорошим местом для начала.

Другие вопросы по тегам