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

首頁 > 學院 > 開發設計 > 正文

Java課Editor

2019-11-17 04:09:07
字體:
來源:轉載
供稿:網友
view plaincopy to clipboardPRint?
package MyFile;    
import java.awt.*;    
import java.io.*;    
import java.awt.datatransfer.*;    
import java.awt.event.*;    
  
public class Editor extends Frame implements ActionListener {    
   TextArea textArea = new TextArea();    
   MenuBar menuBar = new MenuBar();    
   Menu fileMenu = new Menu("文件");    
   MenuItem newItem = new MenuItem("新建");    
   MenuItem openItem = new MenuItem("打開");    
   MenuItem saveItem = new MenuItem("保存");    
   MenuItem saveAsItem = new MenuItem("另存為");    
   MenuItem exitItem = new MenuItem("退出");    
   Menu editMenu = new Menu("編輯");    
   MenuItem selectItem = new MenuItem("全選");    
   MenuItem copyItem = new MenuItem("復制");    
   MenuItem cutItem = new MenuItem("剪切");    
   MenuItem pasteItem = new MenuItem("粘貼");    
   String fileName = null;    
   Toolkit toolKit=Toolkit.getDefaultToolkit();  //工具箱    
   Clipboard clipBoard=toolKit.getSystemClipboard();//剪切    
      
   private FileDialog openFileDialog= new FileDialog(this,"Open File",FileDialog.LOAD);    
   private FileDialog saveAsFileDialog= new FileDialog(this,"Save File As",FileDialog.SAVE);    
  
  public Editor(){    
    setFont(new Font("Times New Roman",Font.PLAIN,12));    
    setBackground(Color.white);    
    setSize(400,300);    
    fileMenu.add(newItem);    
    fileMenu.add(openItem);    
    fileMenu.addSeparator();    
    fileMenu.add(saveItem);    
    fileMenu.add(saveAsItem);    
    fileMenu.addSeparator();    
    fileMenu.add(exitItem);    
    editMenu.add(selectItem);    
    editMenu.addSeparator();    
    editMenu.add(copyItem);    
    editMenu.add(cutItem);    
    editMenu.add(pasteItem);    
    menuBar.add(fileMenu);    
    menuBar.add(editMenu);    
    setMenuBar(menuBar);    
    add(textArea);    
    addWindowListener(new WindowAdapter(){    
                      public void windowClosing(WindowEvent e){    
                          System.exit(0);    
                        }    
                      });    
    newItem.addActionListener(this);    
    openItem.addActionListener(this);    
    saveItem.addActionListener(this);    
    saveAsItem.addActionListener(this);    
    exitItem.addActionListener(this);    
    selectItem.addActionListener(this);    
    copyItem.addActionListener(this);    
    cutItem.addActionListener(this);    
    pasteItem.addActionListener(this);    
  }    
  public void actionPerformed(ActionEvent e) {    
    Object eventSource = e.getSource();    
    if(eventSource == newItem){    
      textArea.setText("");    
    }else if(eventSource == openItem){    
      openFileDialog.show();    
      fileName = openFileDialog.getDirectory()+openFileDialog.getFile();    
      if(fileName != null)    
        readFile(fileName);    
    }else if (eventSource == saveItem){    
      if(fileName != null)    
        writeFile(fileName);    
    }else if(eventSource == saveAsItem){    
      saveAsFileDialog.show();    
      fileName = saveAsFileDialog.getDirectory()+saveAsFileDialog.getFile();    
      if (fileName!= null)    
        writeFile(fileName);    
    }else if(eventSource == selectItem){    
       textArea.selectAll();    
    }else if(eventSource == copyItem){    
       String text=textArea.getSelectedText();    
       StringSelection selection=new StringSelection(text);    
       clipBoard.setContents(selection,null);    
    }else if(eventSource == cutItem){    
       String text=textArea.getSelectedText();    
       StringSelection selection=new StringSelection(text);    
       clipBoard.setContents(selection,null);    
       textArea.replaceRange("",textArea.getSelectionStart(),textArea.getSelectionEnd());    
    }else if(eventSource == pasteItem){    
       Transferable contents=clipBoard.getContents(this);    
       if(contents==null) return;    
       String text;    
       text="";    
       try{    
            text=(String)contents.getTransferData(DataFlavor.stringFlavor);//剪切內容傳給字符串    
        }catch(Exception exception){    
        }    
       textArea.replaceRange(text,textArea.getSelectionStart(),textArea.getSelectionEnd());    
    }else if(eventSource == exitItem){    
      System.exit(0);    
    }    
  }    
  
  public void readFile(String fileName){    
    try{    
      File file = new File(fileName);    
      FileReader readIn = new FileReader(file);    
      int size = (int)file.length();    
      int charsRead = 0;    
      char[] content = new char[size];    
      while(readIn.ready())    
        charsRead += readIn.read(content, charsRead, size - charsRead);    
      readIn.close();    
      textArea.setText(new String(content, 0, charsRead));    
    }    
    catch(IOException e){    
      System.out.println("Error opening file");    
    }    
  }    
  public void writeFile(String fileName){    
    try{    
      File file = new File (fileName);    
      FileWriter writeOut = new FileWriter(file);    
      writeOut.write(textArea.getText());    
      writeOut.close();    
    }    
    catch(IOException e){    
      System.out.println("Error writing file");    
    }    
  }    
        
}   
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 临武县| 富裕县| 冷水江市| 皋兰县| 肇东市| 中西区| 樟树市| 司法| 郯城县| 临江市| 克什克腾旗| 贵港市| 涞源县| 喀喇沁旗| 分宜县| 江城| 特克斯县| 马关县| 德清县| 奉节县| 山西省| 儋州市| 宜兰县| 宁蒗| 林口县| 泸溪县| 徐闻县| 洪洞县| 宁河县| 牡丹江市| 兰溪市| 游戏| 宁远县| 长乐市| 南靖县| 林周县| 井陉县| 禄劝| 康马县| 宝鸡市| 南开区|