第十四周课程总结&实验报告

Posted on 2019-11-29 19:46  hualikun  阅读(101)  评论(0)    收藏  举报
import java.awt.*;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
    public class Note implements ActionListener {
         JFrame frame;
         JMenuBar bar;
        JMenu fileMenu,editMenu,formatMenu,searchMenu,helpMenu;
        JMenuItem newItem,openItem,saveItem,closeItem;
        JScrollPane scroll;
        JTextArea area;
        JFileChooser chooser;
        File file;
    public TextPad() {
        frame=new JFrame("记事本");
        bar=new JMenuBar();
        fileMenu=new JMenu("文件");
        editMenu=new JMenu("编辑");
        formatMenu=new JMenu("格式");
        searchMenu=new JMenu("查找");
        helpMenu=new JMenu("帮助");
        newItem=new JMenuItem("新建(N)");
        openItem=new JMenuItem("打开(O)");
        saveItem=new JMenuItem("另存为(A)");
        closeItem=new JMenuItem("关闭(X)");
        area=new JTextArea();
        scroll=new JScrollPane(area);
        newItem.addActionListener(this);
        openItem.addActionListener(this);
        saveItem.addActionListener(this);
        closeItem.addActionListener(this);
        fileMenu.add(newItem);
        fileMenu.addSeparator();
        fileMenu.add(openItem);
        fileMenu.addSeparator();
        fileMenu.add(saveItem);
        fileMenu.addSeparator();
        fileMenu.add(closeItem);  
        newItem.setMnemonic(KeyEvent.VK_N);
        newItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,java.awt.Event.CTRL_MASK));    
        openItem.setMnemonic(KeyEvent.VK_O);
        openItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,java.awt.Event.CTRL_MASK)); 
        saveItem.setMnemonic(KeyEvent.VK_A);
        saveItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A,java.awt.Event.CTRL_MASK));
        closeItem.setMnemonic(KeyEvent.VK_X);
        closeItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,java.awt.Event.CTRL_MASK));
        frame.setJMenuBar(bar);
        frame.add(scroll);
        frame.setSize(800,500);
        frame.setVisible(true);
        bar.add(fileMenu);
        bar.add(editMenu);
        bar.add(formatMenu);
        bar.add(searchMenu);
        bar.add(helpMenu);
    }
    public void actionPerformed(ActionEvent event) {
        Object obj=event.getSource();
        if(obj instanceof JMenuItem) {
                JMenuItem item=(JMenuItem)obj;
        if(item==newItem)
        {
            new TextPad();
        }else if(item==openItem) {
            chooser=new JFileChooser();
            chooser.showOpenDialog(null);
            file=chooser.getSelectedFile();
            try {
                FileInputStream fis=new FileInputStream(file);
                try {
                    byte[] b=new byte[fis.available()];
                    fis.read(b);
                    area.append(new String(b));
                    fis.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            }
        }else if(item==saveItem) {
            chooser=new JFileChooser();
            chooser.showOpenDialog(null);
            file=chooser.getSelectedFile();
                try {
                    if(!file.exists()) {
                    file.createNewFile();
                    }
                    FileOutputStream fos=new FileOutputStream(file);
                    byte[] b=area.getText().getBytes();
                    fos.write(b);
                    fos.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }               
        }else if(item==closeItem)
        {
            System.exit(1);
        }
      }
    }
}

public class Test {

public static void main(String[] args) {
   TextPad Te = new TextPad();

    }

}
JDBC