Adding Undo and Redo to a Text Component

类别:Java 点击:0 评论:0 推荐:

 

These code examples and other materials are subject to Sun Microsystems, Inc. Legal Terms

Adding Undo and Redo to a Text Component

JTextArea textarea = new JTextArea(); final UndoManager undo = new UndoManager(); Document doc = textarea.getDocument(); //The next two lines should be in one line. doc.addUndoableEditListener( new UndoableEditListener() { The next two lines should be in one line. public void undoableEditHappened( UndoableEditEvent evt) { undo.addEdit(evt.getEdit()); } }); textarea.getActionMap().put("Undo", new AbstractAction("Undo") { public void actionPerformed(ActionEvent evt) { try { if (undo.canUndo()) { undo.undo(); } } catch (CannotUndoException e) { } } }); textarea.getInputMap().put(KeyStroke.getKeyStroke( "control Z"), "Undo"); textarea.getActionMap().put("Redo", new AbstractAction("Redo") { public void actionPerformed(ActionEvent evt) { try { if (undo.canRedo()) { undo.redo(); } } catch (CannotRedoException e) { } } }); textarea.getInputMap().put(KeyStroke.getKeyStroke( "control Y"), "Redo");

Examplets TM provided by permission of the publisher, Addision-Wesley, and Author Patrick Chan.
Order this book from Amazon

本文地址:http://com.8s8s.com/it/it18502.htm