Создание горячих клавиш для формы свинга 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 Это может быть хорошим местом для начала.