国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

在你的JTextComponent組件中加入Undo、Redo功能

2019-11-18 15:23:06
字體:
供稿:網(wǎng)友

  費話就不說了,且看看我是如何實現(xiàn)的。

package lookbook.swing;
import javax.swing.undo.*;
import javax.swing.*;
import javax.swing.text.*;
import javax.swing.event.*;
import java.awt.event.ActionEvent;
import java.awt.*;
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Company: </p>
* @author lookbook
* @version 1.0
*/

public class UndoFrame extends JFrame{
JPanel jPanel1 = new JPanel();
BorderLayout borderLayout1 = new BorderLayout();
JScrollPane jScrollPane1 = new JScrollPane();
JTextArea undoTextArea = new JTextArea();
public UndoFrame() {
try {
jbInit();
}
catch(Exception e) {
e.PRintStackTrace();
}
}
private void jbInit() throws Exception {
jPanel1.setLayout(borderLayout1);
undoTextArea.setText("");
this.setUndo(undoTextArea);
this.getContentPane().add(jPanel1, BorderLayout.CENTER);
jPanel1.add(jScrollPane1, BorderLayout.CENTER);
jScrollPane1.getViewport().add(undoTextArea, null);
}
//設(shè)置Undo、Redo功能的函數(shù)
private void setUndo(JTextComponent textComponent){
final UndoManager undo = new UndoManager();
Document doc = textComponent.getDocument();

doc.addUndoableEditListener(new UndoableEditListener() {
public void undoableEditHappened(UndoableEditEvent evt) {
undo.addEdit(evt.getEdit());
}
});

textComponent.getActionMap().put("Undo",
new AbstractAction("Undo") {
public void actionPerformed(ActionEvent evt) {
try {
if (undo.canUndo()) {
undo.undo();
}
} catch (CannotUndoException e) {
}
}
});
textComponent.getInputMap().put(KeyStroke.getKeyStroke("control Z"), "Undo");

textComponent.getActionMap().put("Redo",
new AbstractAction("Redo") {
public void actionPerformed(ActionEvent evt) {
try {
if (undo.canRedo()) {
undo.redo();
}
} catch (CannotRedoException e) {
}
}
});
textComponent.getInputMap().put(KeyStroke.getKeyStroke("control Y"), "Redo");

}
public static void main(String[] args) {
UndoFrame undo = new UndoFrame();
undo.setSize(200,200);
undo.show();
}
}

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 舒兰市| 咸宁市| 定州市| 杭锦后旗| 井冈山市| 那坡县| 瑞安市| 祁东县| 招远市| 合作市| 尤溪县| 新巴尔虎右旗| 博白县| 阿荣旗| 瑞安市| 溧水县| 张家口市| 长乐市| 南华县| 东乌珠穆沁旗| 嵩明县| 潜山县| 错那县| 都昌县| 成安县| 连州市| 修水县| 巴南区| 临沂市| 镇远县| 息烽县| 门源| 县级市| 阿鲁科尔沁旗| 平果县| 远安县| 广汉市| 侯马市| 昌江| 河北省| 岗巴县|