亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mytextarea.java

?? 一個有undo
?? JAVA
字號:
package com.thb.mytool;

/**
 * <p>Title: DBMS</p>
 * <p>Description: This is a database manager system</p>
 * <p>Copyright: Copyright (c) 2004</p>
 * <p>Company: UPC</p>
 * @author THB
 * @version 1.0
 */

import java.io.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.text.*;
import javax.swing.undo.*;
import javax.swing.event.*;
import java.awt.datatransfer.*;

public class MyTextArea extends JTextArea
        implements ClipboardOwner {

  private UndoableEdit edit;
  private Document document;
  private Clipboard clipBoard;
  private UndoManager undoManager;

  /**
   * 當用戶在Text Area中有所操作時,就可以用getEdit()方法取得UndoableEdit對象,
   * 此對象紀錄著剛剛用戶的操作,因此可由些對象的undo()或redo()達到取消或復原的功能.
   */
  public MyTextArea() {

    document = getDocument();
    undoManager = new UndoManager();
    clipBoard = this.getToolkit().getSystemClipboard();

    document.addUndoableEditListener(new UndoableEditListener() {
      public void undoableEditHappened(UndoableEditEvent e) {
        edit = e.getEdit();
        undoManager.addEdit(edit);
      }
    });
  }

  public void addActionMap() {

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

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

    getActionMap().put("Copy", new AbstractAction("Copy") {
      public void actionPerformed(ActionEvent evt) {
        copy();
      }
    });
    getInputMap().put(KeyStroke.getKeyStroke("control C"), "Copy");

    getActionMap().put("Cut", new AbstractAction("Cut") {
      public void actionPerformed(ActionEvent evt) {
        cut();
      }
    });
    getInputMap().put(KeyStroke.getKeyStroke("control X"), "Cut");

    getActionMap().put("Paste", new AbstractAction("Paste") {
      public void actionPerformed(ActionEvent evt) {
        paste();
      }
    });
    getInputMap().put(KeyStroke.getKeyStroke("control V"), "Paste");
  }

  public void copy() {

    String copy = getSelectedText();

    if (copy != null) {
      StringSelection str = new StringSelection(copy);
      clipBoard.setContents(str, this);
    }
  }

  public void cut() {

    String copy = getSelectedText();

    if (copy != null) {
      StringSelection str = new StringSelection(copy);
      clipBoard.setContents(str, this);
      replaceSelection("");
    }
  }

  public void paste() {

    Transferable transfer = clipBoard.getContents(this);

    if (transfer != null) {
      try {
        String str = (String)transfer.getTransferData(DataFlavor.stringFlavor);
        this.replaceRange(str, getSelectionStart(), getSelectionEnd());
      }
      catch(UnsupportedFlavorException e) {
      }
      catch(IOException e) {
      }
    }
  }

  public void lostOwnership(Clipboard clipboard, Transferable contents) {
  }

  public UndoableEdit getEdit() {
    return edit;
  }

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色欧美88888久久久久久影院| 久久一区二区三区四区| 日韩一级片在线播放| 国产日韩视频一区二区三区| 亚洲精品亚洲人成人网在线播放| 美女国产一区二区| 91国偷自产一区二区三区观看| 精品99久久久久久| 三级在线观看一区二区| 91伊人久久大香线蕉| 久久亚洲影视婷婷| 日韩成人免费看| 色哦色哦哦色天天综合| 亚洲国产精品二十页| 免费成人美女在线观看.| 在线视频欧美精品| 综合久久久久综合| 成人午夜又粗又硬又大| 久久色.com| 九色综合国产一区二区三区| 欧美一级日韩免费不卡| 亚洲一区二区三区爽爽爽爽爽 | 国产一区二区美女诱惑| 9191久久久久久久久久久| 亚洲欧美在线另类| 成人免费精品视频| 国产欧美精品在线观看| 国产伦精品一区二区三区视频青涩| 欧美一级免费大片| 日韩国产精品91| 欧美精品xxxxbbbb| 亚洲第一av色| 欧美日产国产精品| 午夜久久久久久久久| 欧美年轻男男videosbes| 亚洲国产精品久久久久秋霞影院 | 日韩一区二区精品| 日本伊人色综合网| 91精品国产麻豆国产自产在线| 丝袜美腿亚洲一区二区图片| 欧美色偷偷大香| 五月综合激情婷婷六月色窝| 欧美日韩免费电影| 美女免费视频一区二区| 久久综合久久综合久久| 国产jizzjizz一区二区| 国产精品不卡在线| 色婷婷久久久综合中文字幕| 一区二区三区免费看视频| 精品视频一区三区九区| 日韩成人av影视| www久久精品| 北条麻妃国产九九精品视频| 国产精品国产三级国产普通话三级| 99久久免费精品| 亚洲成人动漫精品| 精品国产一区二区精华| 高潮精品一区videoshd| 一区二区三区四区不卡在线| 欧美一区二区久久| 成人动漫一区二区在线| 亚洲综合清纯丝袜自拍| 日韩色视频在线观看| 成人亚洲精品久久久久软件| 一区二区三区在线视频观看58| 7777精品伊人久久久大香线蕉的| 国内外精品视频| 亚洲精品亚洲人成人网在线播放| 欧美一区二区三区的| 国产成人午夜视频| 亚洲一区在线视频| 久久久久高清精品| 在线影视一区二区三区| 九色综合狠狠综合久久| 亚洲男人的天堂av| 日韩精品一区国产麻豆| 99r精品视频| 激情综合色综合久久综合| 亚洲欧美国产高清| 久久久精品国产免费观看同学| 91国偷自产一区二区使用方法| 韩国女主播成人在线| 亚洲蜜桃精久久久久久久| 精品国产三级电影在线观看| 色婷婷久久一区二区三区麻豆| 国产一区激情在线| 亚洲成av人在线观看| 国产精品麻豆视频| 欧美精品一区二区高清在线观看| 在线视频综合导航| 波多野结衣在线aⅴ中文字幕不卡| 天天色天天操综合| 亚洲精品网站在线观看| 国产视频一区不卡| 日韩精品一区二区三区三区免费| 91精品1区2区| 成人h动漫精品一区二区| 极品少妇xxxx偷拍精品少妇| 天堂精品中文字幕在线| 一区二区三区小说| 亚洲欧洲精品一区二区三区| 久久综合久久综合九色| 日韩午夜激情电影| 91精品视频网| 欧美人牲a欧美精品| 欧美专区日韩专区| 色女孩综合影院| 91亚洲永久精品| 成人av在线网| 成人激情小说乱人伦| 国产高清精品久久久久| 国产美女久久久久| 国产精品99精品久久免费| 九九九精品视频| 美腿丝袜亚洲一区| 久久国产精品99久久人人澡| 日韩中文字幕麻豆| 免费观看一级欧美片| 亚洲成年人影院| 亚洲国产成人tv| 国产成人免费xxxxxxxx| 高清国产午夜精品久久久久久| 国产成人精品1024| 成人国产精品视频| 色狠狠色狠狠综合| 欧美亚日韩国产aⅴ精品中极品| 在线亚洲一区观看| 91精品国产综合久久精品性色| 91精品婷婷国产综合久久竹菊| 日韩欧美一区二区三区在线| 欧美白人最猛性xxxxx69交| 欧美大尺度电影在线| 久久九九影视网| 国产精品国产三级国产普通话三级| 一区二区中文字幕在线| 亚洲精品中文在线| 蜜臀a∨国产成人精品| 国产综合一区二区| 99久久精品免费| 欧美三片在线视频观看| 日韩精品一区国产麻豆| 欧美国产亚洲另类动漫| 一区二区在线观看免费| 日本免费新一区视频| 国产精品一区一区三区| 一本久久精品一区二区| 在线综合亚洲欧美在线视频| 久久日韩粉嫩一区二区三区 | 欧美大片日本大片免费观看| 久久亚洲一级片| 亚洲视频在线一区| 久热成人在线视频| 91丨九色porny丨蝌蚪| 777色狠狠一区二区三区| 国产欧美日韩在线| 五月天丁香久久| 成人黄色av网站在线| 欧美日韩一级二级| 国产精品美女久久久久av爽李琼| 一区二区三区精品在线| 久久99精品网久久| 在线免费观看一区| 欧美精品一区二区三区久久久| 亚洲人成网站精品片在线观看| 久久99热99| 在线亚洲精品福利网址导航| 久久综合久久综合久久综合| 亚洲黄色在线视频| 国产 欧美在线| 日韩小视频在线观看专区| 中文字幕日本不卡| 国产一区二区精品在线观看| 91黄色免费观看| 中文字幕在线一区免费| 另类欧美日韩国产在线| 欧美亚洲动漫制服丝袜| 国产精品青草综合久久久久99| 免费高清在线一区| 欧美日韩国产中文| 亚洲色图欧美激情| 欧美精品视频www在线观看| 国产精品免费丝袜| 国产成人免费视频一区| 日韩欧美在线不卡| 日韩精品免费视频人成| 在线一区二区视频| 亚洲欧美日韩系列| 成人久久18免费网站麻豆| 久久亚洲综合av| 国产一区在线看| 精品捆绑美女sm三区| 日韩电影在线一区二区三区| 欧美在线一区二区三区| 亚洲色图制服诱惑| 91日韩在线专区| 伊人色综合久久天天| 色婷婷综合中文久久一本| 亚洲免费观看高清| 欧洲亚洲国产日韩| 爽好久久久欧美精品|