2014-02-18 2 views
1

Я хочу добавить функцию «Отменить» в мое приложение, которое удаляет последний введенный номер в поле. Это то, что я до сих порUndo Feature в Java

 private void btnUndo(java.awt.event.ActionEvent evt) {       
    // TODO add your handling code here: 


    final UndoManager manager = new UndoManager(); 

    if (evt.getActionCommand().equals("Undo")) { 

     try { 
      manager.undo(); 
     } catch (CannotUndoException ex) { 
      ex.printStackTrace(); 
     } 

    } 



}  

Любые идеи? (Я понятия не имею, если это правильно или нет)

Благодаря

+1

Http: //www.javaworld. com/article/2076698/core-java/add-an-undo-redo-function-to-your-java-apps-with-swing.html – Leo

+0

Еще один пример на http://docs.oracle.com/javase/tutorial/uiswing/примеры/компоненты/TextComponentDemoProject/SRC/компоненты/TextComp onentDemo.java, объясняется в http://docs.oracle.com/javase/tutorial/uiswing/components/generaltext.html#undoredoactions и уже работает над текстовыми документами. Если это не то, что вы ищете, вы можете указать, почему вы задавали конкретно введенные * цифры * ... – Marco13

+0

Если вы хотите сделать это правильно, есть шаблон дизайна, который используется для вот, вот учебник по шаблону проектирования команд http://java.dzone.com/articles/design-patterns-command. Для каждого номера, который пользователь вставляет, вы просто инкапсулируете его в команде, и поскольку вы можете отслеживать выполняемые команды, вы можете отменить –

ответ