如何用Java 在记事本中实现撤销与恢复??请高手赐教。。我要关键部分的代码。。最好具体点。加分不是问题 100
4个回答
展开全部
else if (e.getSource() == me1 || e.getSource() == bt_undo
|| e.getSource() == popupMenu_Undo) {//撤销
tex.requestFocusInWindow();
if (undo.canUndo())
try {
undo.undo();
me12.setEnabled(true);//撤销回复
} catch (CannotUndoException ex) {
System.out.println("Unable to undo: " + ex);
ex.printStackTrace();
}
if (!undo.canUndo()) {
me1.setEnabled(false);//撤销
me12.setEnabled(true);//撤销回复
}
} else if (e.getSource() == me12 || e.getSource() == bt_redo
|| e.getSource() == popupMenu_Redo) {//恢复撤销
tex.requestFocusInWindow();
if (undo.canRedo())
try {
undo.redo();
me12.setEnabled(true);
} catch (CannotUndoException ex) {
System.out.println("Unable to redo: " + ex);
ex.printStackTrace();
}
if (!undo.canRedo()) {
me1.setEnabled(true);
me12.setEnabled(false);
}
}
//以下为实现撤销功能
tex.getDocument().addUndoableEditListener(new UndoableEditListener() {
public void undoableEditHappened(UndoableEditEvent e) {//添加撤销管理器
undo.addEdit(e.getEdit());
}
});
可以查API文档不知道的方法意思。
|| e.getSource() == popupMenu_Undo) {//撤销
tex.requestFocusInWindow();
if (undo.canUndo())
try {
undo.undo();
me12.setEnabled(true);//撤销回复
} catch (CannotUndoException ex) {
System.out.println("Unable to undo: " + ex);
ex.printStackTrace();
}
if (!undo.canUndo()) {
me1.setEnabled(false);//撤销
me12.setEnabled(true);//撤销回复
}
} else if (e.getSource() == me12 || e.getSource() == bt_redo
|| e.getSource() == popupMenu_Redo) {//恢复撤销
tex.requestFocusInWindow();
if (undo.canRedo())
try {
undo.redo();
me12.setEnabled(true);
} catch (CannotUndoException ex) {
System.out.println("Unable to redo: " + ex);
ex.printStackTrace();
}
if (!undo.canRedo()) {
me1.setEnabled(true);
me12.setEnabled(false);
}
}
//以下为实现撤销功能
tex.getDocument().addUndoableEditListener(new UndoableEditListener() {
public void undoableEditHappened(UndoableEditEvent e) {//添加撤销管理器
undo.addEdit(e.getEdit());
}
});
可以查API文档不知道的方法意思。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
写过一次,明天找找去。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
存到缓存里吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询