4
我嘗試編寫一個TextEditor。現在我可以通過添加一個按鈕來實現它。我想通過按Ctrl+Z
來實現撤銷。如何處理它? 請給我一些建議。如何通過在java中按Ctrl + z來實現撤銷
現在我可以通過
jta.addKeyListener(new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
if((e.getKeyChar() == 0x1a)) {
if(doManager.canUndo()) {
doManager.undo();
}
System.out.println(1);
}
}
@Override
public void keyReleased(KeyEvent e) {
}
@Override
public void keyPressed(KeyEvent e) {
}
});
爲什麼不能意識到這一點?
jta.addKeyListener(new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
if((e.getKeyCode() == KeyEvent.VK_Z) && ((e.getModifiers() & KeyEvent.CTRL_MASK) != 0)) {
if(doManager.canUndo()) {
doManager.undo();
}
System.out.println(1);
}
}
@Override
public void keyReleased(KeyEvent e) {
}
@Override
public void keyPressed(KeyEvent e) {
}
});
爲什麼不能?
jta.addKeyListener(new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
if((e.getKeyCode() == KeyEvent.VK_Z) && (e.isControlDown() == true)) {
if(doManager.canUndo()) {
doManager.undo();
}
System.out.println(1);
}
}
@Override
public void keyReleased(KeyEvent e) {
}
@Override
public void keyPressed(KeyEvent e) {
}
});
@Felix格柏
的可能重複意識到這一點[如何使用Ctrl + Z和Ctrl + Y與所有文本組件?](http://stackoverflow.com/questions/10532286/how-to-use-ctrlz-and-ctrly-with-all-text-components)或者:http://stackoverflow.com/question s/12030836 /撤消功能在jtextarea – Marcinek
看看http://stackoverflow.com/questions/2541597/how-to-gracefully-handle-the-sigkill-signal-in-java –