国产探花免费观看_亚洲丰满少妇自慰呻吟_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");    
    }    
  }    
        
}   
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 海兴县| 原平市| 凌海市| 安远县| 临邑县| 青浦区| 永春县| 师宗县| 兴城市| 手机| 桂平市| 镶黄旗| 繁昌县| 北京市| 汉川市| 同江市| 密云县| 龙山县| 黄梅县| 张家界市| 富源县| 科技| 庆云县| 仙游县| 综艺| 治多县| 凤城市| 谢通门县| 平利县| 怀集县| 芒康县| 邹城市| 台北县| 榆社县| 庆云县| 晋中市| 莱西市| 西昌市| 弥渡县| 玛曲县| 山丹县|