⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frame1.java~29~

📁 纯手工JEDITERPANE为输入单元以JB编译器编写的写字板
💻 JAVA~29~
字号:
package note;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import javax.swing.*;
import javax.swing.JOptionPane;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.DataOutputStream;
import java.io.DataInputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.FileWriter;
import java.io.BufferedWriter;
import java.io.File;

/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2007</p>
 *
 * <p>Company: </p>
 *
 * @author not attributable
 * @version 1.0
 */
public class Frame1 extends JFrame {
    JPanel contentPane;
    BorderLayout borderLayout1 = new BorderLayout();
    JMenuBar jMenuBar1 = new JMenuBar();
    JMenu jMenuFile = new JMenu();
    JMenuItem jMenuFileExit = new JMenuItem();
    JMenuItem jMenuItem1 = new JMenuItem();
    JMenuItem jMenuItem2 = new JMenuItem();
    JMenuItem jMenuItem3 = new JMenuItem();
    JMenuItem jMenuItem4 = new JMenuItem();
    JFileChooser jFileChooser1 = new JFileChooser();
    JPopupMenu jPopupMenu1 = new JPopupMenu();
    JMenuItem jMenuItem5 = new JMenuItem();
    JMenuItem jMenuItem6 = new JMenuItem();
    JMenuItem jMenuItem7 = new JMenuItem();
    JMenu jMenu1 = new JMenu();
    JTextArea jTextArea1 = new JTextArea();
    JFileChooser jFileChooser2 = new JFileChooser();
    JFileChooser jFileChooser3 = new JFileChooser();
    boolean textIsChanged = false;
    boolean textIsSaved = false;
    String path=new String("");
    public Frame1() {
        try {
            setDefaultCloseOperation(EXIT_ON_CLOSE);
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }

    /**
     * Component initialization.
     *
     * @throws java.lang.Exception
     */
    private void jbInit() throws Exception {
        contentPane = (JPanel) getContentPane();
        contentPane.setLayout(borderLayout1);
        setSize(new Dimension(400, 300));
        setTitle("Frame Title");
        jMenuFile.setText("文件");
        jMenuFileExit.setText("退出");
        jMenuFileExit.addActionListener(new Frame1_jMenuFileExit_ActionAdapter(this));
        jMenuItem1.setText("打开");
        jMenuItem1.addActionListener(new Frame1_jMenuItem1_actionAdapter(this));
        jMenuItem2.setText("新建");
        jMenuItem2.addActionListener(new Frame1_jMenuItem2_actionAdapter(this));
        jMenuItem3.setText("保存");
        jMenuItem3.addActionListener(new Frame1_jMenuItem3_actionAdapter(this));
        jMenuItem4.setText("另存为");
        jMenuItem4.addActionListener(new Frame1_jMenuItem4_actionAdapter(this));
        jMenuItem5.setText("1");
        jMenuItem6.setText("2");
        jMenuItem7.setText("3");
        jMenu1.setText("查找");
        jMenuBar1.add(jMenuFile);
        jMenuBar1.add(jMenu1);
        jMenuFile.add(jMenuItem2);
        jMenuFile.add(jMenuItem1);
        jMenuFile.add(jMenuItem3);
        jMenuFile.add(jMenuItem4);
        jMenuFile.add(jMenuFileExit);
        jPopupMenu1.add(jMenuItem5);
        jPopupMenu1.add(jMenuItem6);
        jPopupMenu1.add(jMenuItem7);
        contentPane.add(jTextArea1, java.awt.BorderLayout.CENTER);
        setJMenuBar(jMenuBar1);
    }
    //三种键盘操作的提示,即‘修改过’
    public void keyPressed(KeyEvent e) {
        textIsChanged = true;
    }
    public void keyRelease(KeyEvent e) {
        textIsChanged = true;
    }
    public void keyTyped(KeyEvent e) {
        textIsChanged = true;
    }
    /**
     * File | Exit action performed.
     *
     * @param actionEvent ActionEvent
     */
    void jMenuFileExit_actionPerformed(ActionEvent actionEvent) {
        System.exit(0);
    }

    public void jMenuItem1_actionPerformed(ActionEvent e) {
        if(textIsChanged){
            if(textIsSaved!=true){
                jFileChooser2.showSaveDialog(this);
                try {
                    FileWriter ss2 = new FileWriter(jFileChooser2.
                            getSelectedFile().getPath());
                    ss2.write(jTextArea1.getText());
                    ss2.close();
                } catch (IOException ie) {}
                textIsChanged = true;
            }
        }
        jFileChooser1.showOpenDialog(this);
        try {
            File file = new File(jFileChooser1.getSelectedFile().getPath());
            FileReader in = new FileReader(file);
            int size = (int) file.length();
            char[] data = new char[size];
            int inttemp = 0;
            while (inttemp < size) {
                inttemp += in.read(data, inttemp, size - inttemp);
                jTextArea1.setText(new String(data));
                in.close(); ;
            }
            } catch (Exception x) {}
            path = jFileChooser1.getSelectedFile().getPath();
            textIsChanged = false;
            textIsSaved = false;
        }
    public void jMenuItem2_actionPerformed(ActionEvent e) {
        if(textIsChanged){
            if(textIsSaved!=true){
                jFileChooser2.showSaveDialog(this);
                try {
                    FileWriter ss2 = new FileWriter(jFileChooser2.
                            getSelectedFile().getPath());
                    ss2.write(jTextArea1.getText());
                    ss2.close();
                } catch (IOException ie) {}
                textIsChanged = true;
            }
        }
        jTextArea1.setText("");path = "";
        textIsChanged=false;
        textIsSaved=false;
    }

    public void jMenuItem3_actionPerformed(ActionEvent e) {
        if (textIsSaved) {
            try {
                FileWriter ss2 = new FileWriter(path);
                ss2.write(jTextArea1.getText());
                ss2.close();
            } catch (IOException ie) {}
        } else {
            jFileChooser2.showSaveDialog(this);
            try {
                FileWriter ss2 = new FileWriter(jFileChooser2.getSelectedFile());
                ss2.write(jTextArea1.getText());
                ss2.close();
            } catch (IOException ie) {ie.printStackTrace();}
            path = jFileChooser2.getSelectedFile().getPath();
        }
        textIsChanged = false;
        textIsSaved=true;
        }
    public void jMenuItem4_actionPerformed(ActionEvent e) {
        jFileChooser3.showDialog(this, "另存为");
        int x=JFileChooser.APPROVE_OPTION;
        try {
            FileWriter sss2 = new FileWriter(jFileChooser3.getSelectedFile());
            sss2.write(jTextArea1.getText());
            sss2.close();
        } catch (Exception ie) {ie.printStackTrace();}
        textIsChanged = false;
        path = jFileChooser3.getSelectedFile().getPath();
        textIsSaved=true;
        }
    }


    class Frame1_jMenuItem4_actionAdapter implements ActionListener {
    private Frame1 adaptee;
    Frame1_jMenuItem4_actionAdapter(Frame1 adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jMenuItem4_actionPerformed(e);
    }
}


class Frame1_jMenuItem3_actionAdapter implements ActionListener {
    private Frame1 adaptee;
    Frame1_jMenuItem3_actionAdapter(Frame1 adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jMenuItem3_actionPerformed(e);
    }
}


class Frame1_jMenuItem2_actionAdapter implements ActionListener {
    private Frame1 adaptee;
    Frame1_jMenuItem2_actionAdapter(Frame1 adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jMenuItem2_actionPerformed(e);
    }
}


class Frame1_jMenuItem1_actionAdapter implements ActionListener {
    private Frame1 adaptee;
    Frame1_jMenuItem1_actionAdapter(Frame1 adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jMenuItem1_actionPerformed(e);
    }
}


class Frame1_jMenuFileExit_ActionAdapter implements ActionListener {
    Frame1 adaptee;

    Frame1_jMenuFileExit_ActionAdapter(Frame1 adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent actionEvent) {
        adaptee.jMenuFileExit_actionPerformed(actionEvent);
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -