나는 Dell Inspiron E1505를 가지고 있으며 this image에서 볼 수 있듯이 앞면에 음소거, 재생/일시 정지, 정지, 볼륨 조절 등을위한 버튼이 있습니다. 음소거 및 볼륨 버튼은 실제로 볼륨 설정은 컴퓨터 자체에 적용되지만 다른 것들도 Windows Media Player 및 심지어 Pandora과 같은 일부 다른 응용 프로그램을 제어하는 데 사용될 수 있습니다.음소거/재생/정지/등으로부터 입력을 수신합니다. Dell Inspiron 노트북 앞면
이 버튼의 입력에 응답하는 응용 프로그램을 작성하려면 어떻게해야합니까? 특정 응용 프로그램을 염두에두고 있지 않으므로 어떤 언어의 솔루션이라도 훌륭합니다.
내가 자바 스윙의 모든 KeyListener를 설정하고, 트리거 얻을 사건을보고 시도 : 내가 누르는 버튼에 관계없이,JFrame frame = new JFrame();
frame.addKeyListener(new KeyListener() {
@Override public void keyPressed(KeyEvent e) {
System.out.println("pressed: " + e);
}
@Override public void keyReleased(KeyEvent e) {}
@Override public void keyTyped(KeyEvent e) {}
});
frame.setVisible(true);
결과입니다 : 그래서
pressed: java.awt.event.KeyEvent[KEY_PRESSED,keyCode=0,keyText=Unknown keyCode: 0x0,keyChar=Undefined keyChar,keyLocation=KEY_LOCATION_STANDARD] on frame0
AFAIK 다른 버튼을 구분할 방법이 없습니다. 다시 한번 말하지만, 어떤 언어로든 솔루션을 받아 들일 것입니다. 특정 어플리케이션을 아직 염두에 두지 않았기 때문입니다.
흥미 롭습니다. 동일한 코드를 실행하면 KeyEvent 객체에 고유 한 "원시 코드"가 설정되어있는 것을 볼 수 있지만 객체는이 필드에 대한 공용 액세스를 제공하지 않습니다. –