java 基础问题 记事本里的撤销是怎么实现的;先告诉我一步撤销的实现在说多步实现 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://topic.csdn.net/t/20050101/16/3693365.htmlJTextField提供了undo/redo的方法,你只要在你写的类中首先定义一个UNDOMANAGER .UndoManager mg = new UndoManager();然后继承UndoableEditListener.,在实现的方法中 public void undoableEditHappened(UndoableEditEvent parm1) { mg.addEdit(parm1.getEdit());//将EDIT注册到UNDOMANAGER中 }然后给JTextField添加jTextArea1.getDocument().addUndoableEditListener(this);.增加两个BUTTON,一个实现UNDO,一个实现REDO.UDNO方法: public void undo() { mg.undo(); } REDO方法 public void redo() { mg.redo(); } 试试.很管用.如果不是要实现JTEXTFIELD的UNDOREDO可能就需要自己写UNDO/REDO的方法,但思想都是一样的. 简单的就是当文本改变的时候, 保存成一个类似堆栈的结构比如:时刻t1: aaaa -------> 堆栈的第一项时刻t2: aaaabbb -------> 堆栈的第二项时刻t3: aaaabbbCC在时刻t3的时候,用户想撤销了, 这个时候,弹出栈顶, 即t2时刻的数值, 用此时刻的文本代替当前的, 再撤销, 则用t1代替当前文本,考虑到存储效率, 保存变化的部分是最佳的。 而且, 不能让用户无限制的撤销, 比如堆栈大小限制为10, 就让用户只能有十次机会。 http://www.diybl.com/course/3_program/java/javajs/200896/139294.htmlimport javax.swing.undo.UndoManager; 请在 “下面贴子” 与“本贴” 随便填个什么字,结贴,谢谢。 print'*' print'*' 怎样输出才不换行? 求解?????? System.in.read()从键盘上读入的字符放在那了? 求一算法 java swing JFileChooser保存文件的问题 我想学习JAVA,想问一下JAVA是什么 不知道JAVA思想转变冒? 谁有InstallAnywhere6.1的注册码阿?或者注册版下载 非常简单的swing问题 各位大虾,请行行好吧,如果有谁知道,请帮助我! 新手JDBC连接SQL server的问题。 请问java 中如何知道由一个类所创建的对象的个数?
mg.addEdit(parm1.getEdit());//将EDIT注册到UNDOMANAGER中
}然后给JTextField添加jTextArea1.getDocument().addUndoableEditListener(this);.增加两个BUTTON,一个实现UNDO,一个实现REDO.UDNO方法: public void undo() {
mg.undo();
}
REDO方法
public void redo() {
mg.redo();
}
试试.很管用.如果不是要实现JTEXTFIELD的UNDOREDO可能就需要自己写UNDO/REDO的方法,但思想都是一样的.