В настоящее время я разрабатываю мультимедийное приложение на Java, используя привязки gstreamer для Java.Все идет хорошо, за исключением одного небольшого вопроса, касающегося клавиатуры, в частности клавиш мультимедиа (например, воспроизведение / пауза, назад, далее).
У меня есть Действия, которые отлично работают как кнопки / пункты меню для этих функций, инадеялся разрешить использование клавиш, которые есть на некоторых клавиатурах (часто на ноутбуках).Однако я не смог найти andthing в java.awt.event.KeyEvent для представления этих ключей.Я попытался запустить фрагмент кода ниже, и он работал нормально для большинства клавиш, включая f1-12, но не реагировал ни на «fn», ни на клавиши мультимедиа, пока удерживалась «fn».
Кто-нибудьзнаете, как заставить эти ключи работать?
Код:
import javax.swing.*;
import java.awt.event.*;
public class Key extends JFrame{
public Key(){
JTextField f = new JTextField(50);
f.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e){
System.out.printf("%s : %d \n", e.getKeyChar(), e.getKeyCode());
}
});
setContentPane(f);
pack();
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
setVisible(true);
}
public static void main(String[] args){
new Key();
}
}