2
我有一個intresting問題。JTextPane和鍵盤輸入
我有一個JTextPane內的JScrollPane是與樣式文本poplate。文本從外部設備生成,然後傳遞給StyledDocument(它看起來像一個終端窗口)。我使用按鍵監聽器將每個字符輸入到設備,然後將字符從外部設備打印到文檔中。這是奇妙的工作!我不能更開心!
EXCEPT!
當我按下進入或退後空間窗口「boink」錯誤聲音播放。當我按下Enter或Backspace時,如何覆蓋JTextPane不播放「boink」聲音?
謝謝!
現行規範的關鍵監聽器固定它
addKeyListener(new KeyAdapter() {
@Override
public void keyTyped(KeyEvent ke) {
//Absorb this action.
}
@Override
public void keyReleased(KeyEvent ke) {
//Absorb this action.
}
@Override
public void keyPressed(KeyEvent evt) {
char c = evt.getKeyChar();
if (((byte) c) == 0x0A) {
c = ((char) 0x0D);
}
try {
rumIO.write(c);
} catch (Exception e) {
}
}
});
代碼!
addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent evt) {
InputMap inputMap = getInputMap();
ActionMap actionMap = getActionMap();
KeyStroke keyStroke = KeyStroke.getKeyStrokeForEvent(evt);
inputMap.put(keyStroke, "doNothing");
actionMap.put("doNothing", new AbstractAction() {
@Override
public void actionPerformed(ActionEvent ae) {
//Do Nothing
}
});
char c = evt.getKeyChar();
if (((byte) c) == 0x0A) {
c = ((char) 0x0D);
}
try {
rumIO.write(c);
} catch (Exception e) {
}
}
});
那就是我需要的!謝謝。我把我的修補程序放在最上面。 – merjr