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

📄 notepad.java

📁 一个记事本的程序 涵盖的方面是很多的
💻 JAVA
字号:
import java.awt.Toolkit;
import java.awt.event.WindowEvent;
import java.io.File;

import javax.swing.*;

public class Notepad extends JFrame {
    private InputTextArea text;
    
    private Statusbar statusbar;
    
    private MyMenuBar menubar;
    
    private Handle handle;

    public Notepad(String title) {
        super(title);
        
        handle = new Handle();
        handle.setNote(this);
        
        menubar = new MyMenuBar(handle);
        setJMenuBar(menubar);

        text = new InputTextArea(handle);

        statusbar = new Statusbar(handle);
        
        getContentPane().add(statusbar,"South");
        getContentPane().add(new JScrollPane(text), "Center");

        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setSize(700, 500);
        int w = (int) (Toolkit.getDefaultToolkit().getScreenSize().getWidth() /2
                - getWidth() / 2);
        int h = (int) (Toolkit.getDefaultToolkit().getScreenSize().getHeight() /2
                - getHeight() / 2);
        setLocation(w,h);
        setVisible(true);
    }
    
    public void RemoveStatusbar(){
        remove(statusbar);
        validate();
    }
    
    public void AddStatusbar(){
        getContentPane().add(statusbar,"South");
        validate();
    }
    
    protected void processWindowEvent(WindowEvent e){
        if (e.getID() == WindowEvent.WINDOW_CLOSING){
            setSave(getSaveCount());
        }
    }
    
    public int getSaveCount(){
        int i = JOptionPane.NO_OPTION;
        if(text.getText().equals("")){
            dispose();
        }
        else{
            i = JOptionPane.showConfirmDialog(this,"文件内文字已改变。想保存文件吗?"
                    ,"记事本",JOptionPane.INFORMATION_MESSAGE,JOptionPane.YES_NO_CANCEL_OPTION);
        }
        return i;
    }
    
    public void setSave(int i){
        switch(i){
            case JOptionPane.YES_OPTION: {
                handle.getMenubar().SaveFile();
                handle.stop();
                handle.start();
                break;
            }
            case JOptionPane.NO_OPTION:{
                handle.stop();
            }
            case JOptionPane.CANCEL_OPTION:{
                return;
            }
        }
    }

    public static void main(String[] args) {
        Handle handle = new Handle();
        handle.start();
    }
}

⌨️ 快捷键说明

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