中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      Java程序編寫記事本方法

      時間:2024-06-22 18:41:31 JAVA認證 我要投稿
      • 相關推薦

      Java程序編寫記事本方法大全

        java語言可以實現很多程序,那么用java怎么編寫記事本呢?下面跟yjbys小編一起來看看吧!

        import java.awt.*;

        import java.awt.event.*;

        import javax.swing.*;

        import java.io.*;

        public class Notepad extends JFrame {

        // 系統組件聲明

        private JMenuBar menuBar = new JMenuBar();

        private JEditorPane content = new JEditorPane();

        private JScrollPane scroll = new JScrollPane(content);

        private JFileChooser filechooser = new JFileChooser() ;

        private BorderLayout bord = new BorderLayout();

        private JLabel statusBar = new JLabel();

        private JPanel pane = new JPanel();

        private File file = null;

        // 定義文件菜單

        private JMenu fileMenu = new JMenu();

        private JMenuItem newMenuItem = new JMenuItem();

        private JMenuItem openMenuItem = new JMenuItem();

        private JMenuItem saveMenuItem = new JMenuItem();

        private JMenuItem saveAsMenuItem = new JMenuItem();

        private JMenuItem pageSetupMenuItem = new JMenuItem();

        private JMenuItem printMenuItem = new JMenuItem();

        private JMenuItem exitMenuItem = new JMenuItem();

        // 定義風格菜單

        private JMenu styleMenu = new JMenu();

        private ButtonGroup styleMenuGroup = new ButtonGroup();

        private JRadioButtonMenuItem javaStyleMenuItem = new JRadioButtonMenuItem();

        private JRadioButtonMenuItem metalStyleMenuItem = new JRadioButtonMenuItem();

        private JRadioButtonMenuItem windowsStyleMenuItem = new JRadioButtonMenuItem();

        // 定義幫助菜單

        private JMenuItem aboutMenuItem = new JMenuItem();

        private JMenuItem helpTopicMenuItem = new JMenuItem();

        private JMenu helpMenu = new JMenu();

        // 構造函數

        public Notepad(){

        initComponents();

        }

        private void initComponents(){

        // 添加子菜單項到文件菜單

        fileMenu.setText("/u6587/u4ef6 (F)");

        newMenuItem.setText(" 新建(N) Ctrl+N");

        openMenuItem.setText(" 打開(O)... Ctrl+O");

        saveMenuItem.setText(" 保存(S) Ctrl+S");

        saveAsMenuItem.setText(" 另存為(A)...");

        pageSetupMenuItem.setText(" 頁面設置(U)...");

        printMenuItem.setText(" 打印(P)... Ctrl+P");

        exitMenuItem.setText(" 退出");

        fileMenu.add(newMenuItem);

        fileMenu.add(openMenuItem);

        fileMenu.add(saveMenuItem);

        fileMenu.add(saveAsMenuItem);

        fileMenu.addSeparator();

        fileMenu.add(pageSetupMenuItem);

        fileMenu.add(printMenuItem);

        fileMenu.addSeparator();

        fileMenu.add(exitMenuItem);

        // 添加子菜單項到風格菜單

        styleMenu.setText("風格(S)");

        javaStyleMenuItem.setText("Java默認");

        metalStyleMenuItem.setText("Metal風格");

        windowsStyleMenuItem.setText("Windows風格");

        styleMenuGroup.add(javaStyleMenuItem);

        styleMenuGroup.add(metalStyleMenuItem);

        styleMenuGroup.add(windowsStyleMenuItem);

        styleMenu.add(javaStyleMenuItem);

        styleMenu.add(metalStyleMenuItem);

        styleMenu.add(windowsStyleMenuItem);

        // 添加子菜單項到幫助菜單

        helpMenu.setText("幫助(H)");

        helpTopicMenuItem.setText(" 幫助主題(H)");

        aboutMenuItem.setText(" 關于記事本(A)");

        helpMenu.add(helpTopicMenuItem);

        helpMenu.addSeparator();

        helpMenu.add(aboutMenuItem);

        // 定義文件菜單下的事件監聽

        newMenuItem.addActionListener(new newMenuItem_actionAdapter(this));

        openMenuItem.addActionListener(new openMenuItem_actionAdapter(this));

        saveMenuItem.addActionListener(new saveMenuItem_actionAdapter(this));

        saveAsMenuItem.addActionListener(new saveAsMenuItem_actionAdapter(this));

        pageSetupMenuItem.addActionListener(new pageSetupMenuItem_actionAdapter(this));

        printMenuItem.addActionListener(new printMenuItem_actionAdapter(this));

        exitMenuItem.addActionListener(new exitMenuItem_actionAdapter(this));

        // 定義風格菜單下的事件監聽

        javaStyleMenuItem.addActionListener(new javaStyleMenuItem_actionAdapter(this));

        metalStyleMenuItem.addActionListener(new metalStyleMenuItem_actionAdapter(this));

        windowsStyleMenuItem.addActionListener(new windowsStyleMenuItem_actionAdapter(this));

        // 定義幫助菜單下的事件監聽

        helpTopicMenuItem.addActionListener(new helpTopicMenuItem_actionAdapter(this));

        aboutMenuItem.addActionListener(new aboutMenuItem_actionAdapter(this));

        // 填加菜單到菜單欄

        menuBar.add(fileMenu);

        menuBar.add(styleMenu);

        menuBar.add(helpMenu);

        // 對主窗口的一些設置

        this.setDefaultCloseOperation(EXIT_ON_CLOSE);

        this.setTitle("無標題 - /u8bb0/u4e8b/u672c");

        this.setSize(640,480);

        setJMenuBar(menuBar);

        pane.setLayout(bord);

        pane.add("Center",scroll);

        setContentPane(pane);

        }

        // 定義新建菜單項方法

        public void newMenuItemActionPerformed(ActionEvent evt){

        file = null;

        if(!("".equals(content.getText()))){

        Object[] options = { " 是(Y) ", " 否(N) "," 取消 " };

        int s = JOptionPane.showOptionDialog(null, "/u6587/u4ef6 "+getTitle()+" /u7684/u6587/u5b57/u5df2/u7ecf/u6539/u53d8/u3002/n/u60f3/u4fdd/u5b58/u6587/u4ef6/u5417/uff1f", "/u8bb0/u4e8b/u672c",

        JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE,

        null, options, options[0]);

        switch(s){

        case 0:

        int returnVal=filechooser.showSaveDialog(this);

        if(returnVal == JFileChooser.APPROVE_OPTION) {

        file=filechooser.getSelectedFile();

        try{

        FileWriter fw=new FileWriter(file);

        fw.write(content.getText());

        setTitle(filechooser.getSelectedFile().getName()+" - /u8bb0/u4e8b/u672c");

        fw.close();

        }

        catch(Exception e){

        e.printStackTrace();

        }

        break;

        }

        case 1:

        content.setText("");

        setTitle("無標題 - /u8bb0/u4e8b/u672c");

        }

        }

        }

        // 定義打開菜單項方法

        public void openMenuItemActionPerformed(ActionEvent evt){

        try {

        file = null;

        int returnVal = filechooser.showOpenDialog(this);

        if(returnVal == JFileChooser.APPROVE_OPTION){

        file = filechooser.getSelectedFile();

        FileReader fr = new FileReader(file);

        int len = (int)file.length();

        char[] buffer = new char[len];

        fr.read(buffer,0,len);

        fr.close();

        content.setText(new String(buffer));

        }

        }

        catch(Exception e){

        e.printStackTrace();

        }

        }

        // 定義退出菜單項方法

        public void exitMenuItem_actionPerformed(ActionEvent e){

        if(!("".equals(content.getText()))){

        Object[] options = { " 是(Y) ", " 否(N) "," 取消 " };

        int s = JOptionPane.showOptionDialog(null, "文件的文字已經改變。/n想保存文件嗎?", "/u8bb0/u4e8b/u672c",

        JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE,

        null, options, options[0]);

        switch(s){

        case 0:

        int returnVal=filechooser.showSaveDialog(this);

        if(returnVal == JFileChooser.APPROVE_OPTION) {

        file=filechooser.getSelectedFile();

        try{

        FileWriter fw=new FileWriter(file);

        fw.write(content.getText());

        setTitle(filechooser.getSelectedFile().getName()+" - /u8bb0/u4e8b/u672c");

        fw.close();

        }

        catch(Exception ex){

        ex.printStackTrace();

        }

        break;

        }

        case 1:

        System.exit(0);

        }

        }

        else{

        System.exit(0);

        }

        }

        // 保存事件

        public void saveMenuItemActionPerformed(ActionEvent evt){

        int returnVal=filechooser.showSaveDialog(this);

        if(returnVal == JFileChooser.APPROVE_OPTION) {

        file=filechooser.getSelectedFile();

        try{

        FileWriter fw=new FileWriter(file);

        fw.write(content.getText());

        setTitle(filechooser.getSelectedFile().getName()+" - /u8bb0/u4e8b/u672c");

        fw.close();

        }

        catch(Exception e){

        e.printStackTrace();

        }

        }

        }

        // 另存為事件

        public void saveAsMenuItemActionPerformed(ActionEvent evt){

        filechooser.setDialogTitle("另存為...");

        int returnVal = filechooser.showSaveDialog(this);

        if(returnVal == JFileChooser.APPROVE_OPTION) {

        file=filechooser.getSelectedFile();

        try{

        FileWriter fw=new FileWriter(file);

        fw.write(content.getText());

        setTitle(filechooser.getSelectedFile().getName()+" - /u8bb0/u4e8b/u672c");

        fw.close();

        }

        catch(Exception e){

        e.printStackTrace();

        }

        }

        }

        // 頁面設置事件

        public void pageSetupMenuItemActionPerformed(ActionEvent evt){

        JOptionPane.showMessageDialog(null,"此功能正在開發中...");

        }

        // 打印事件

        public void printMenuItemActionPerformed(ActionEvent evt){

        JOptionPane.showMessageDialog(null,"打印中...");

        }

        // 更新風格外觀方法

        void changeLookFeel(String className) {

        try {

        UIManager.setLookAndFeel(className);

        }

        catch (Exception e) {

        System.out.println(e);

        }

        SwingUtilities.updateComponentTreeUI(this);

        }

        // Java風格事件

        public void javaStyleMenuItemActionPerformed(ActionEvent evt){

        changeLookFeel("javax.swing.plaf.metal.MetalLookAndFeel");

        }

        // Motif風格事件

        public void metalStyleMenuItemActionPerformed(ActionEvent evt){

        changeLookFeel("com.sun.java.swing.plaf.motif.MotifLookAndFeel");

        }

        // MAC風格事件

        public void windowsStyleMenuItemActionPerformed(ActionEvent evt){

        changeLookFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");

        }

        // 幫助事件

        public void helpTopicMenuItemActionPerformed(ActionEvent evt){

        JOptionPane.showMessageDialog(null,"/u9700/u8981/u5e2e/u52a9/u5417/uff1f");

        }

        // 關于事件

        public void aboutMenuItemActionPerformed(ActionEvent evt){

        JOptionPane.showMessageDialog(null,"/n/u7a0b/u5e8f/u540d/u79f0/uff1aJava /u8bb0/u4e8b/u672c/n/u4ee3/u7801/u7f16/u5199/uff1aCavien/n/u4f5c/u8005/u7f51/u7ad9/uff1ahttp:/www.cavien.com/nE-mail/u3000/uff1aCavien@163.com");

        }

        // 主函數

        public static void main(String args[]) {

        Notepad notepad = new Notepad();

        notepad.setVisible(true);

        }

        }

        // 定義新建事件類

        class newMenuItem_actionAdapter implements ActionListener{

        Notepad adaptee;

        newMenuItem_actionAdapter(Notepad adaptee){

        this.adaptee = adaptee;

        }

        public void actionPerformed(ActionEvent evt){

        adaptee.newMenuItemActionPerformed(evt);

        }

        }

        // 定義打開事件類

        class openMenuItem_actionAdapter implements ActionListener{

        Notepad adaptee;

        openMenuItem_actionAdapter(Notepad adaptee){

        this.adaptee = adaptee;

        }

        public void actionPerformed(ActionEvent evt){

        adaptee.openMenuItemActionPerformed(evt);

        }

        }

        // 定義保存事件類

        class saveMenuItem_actionAdapter implements ActionListener{

        Notepad adaptee;

        saveMenuItem_actionAdapter(Notepad adaptee){

        this.adaptee = adaptee;

        }

        public void actionPerformed(ActionEvent evt){

        adaptee.saveMenuItemActionPerformed(evt);

        }

        }

        // 定義另存為事件類

        class saveAsMenuItem_actionAdapter implements ActionListener{

        Notepad adaptee;

        saveAsMenuItem_actionAdapter(Notepad adaptee){

        this.adaptee = adaptee;

        }

        public void actionPerformed(ActionEvent evt){

        adaptee.saveAsMenuItemActionPerformed(evt);

        }

        }

        // 定義頁面設置事件類

        class pageSetupMenuItem_actionAdapter implements ActionListener{

        Notepad adaptee;

        pageSetupMenuItem_actionAdapter(Notepad adaptee){

        this.adaptee = adaptee;

        }

        public void actionPerformed(ActionEvent evt){

        adaptee.pageSetupMenuItemActionPerformed(evt);

        }

        }

        // 定義打印事件類

        class printMenuItem_actionAdapter implements ActionListener{

        Notepad adaptee;

        printMenuItem_actionAdapter(Notepad adaptee){

        this.adaptee = adaptee;

        }

        public void actionPerformed(ActionEvent evt){

        adaptee.printMenuItemActionPerformed(evt);

        }

        }

        // 定義Java風格事件類

        class javaStyleMenuItem_actionAdapter implements ActionListener{

        Notepad adaptee;

        javaStyleMenuItem_actionAdapter(Notepad adaptee){

        this.adaptee = adaptee;

        }

        public void actionPerformed(ActionEvent evt){

        adaptee.javaStyleMenuItemActionPerformed(evt);

        }

        }

        // 定義Java風格事件類

        class metalStyleMenuItem_actionAdapter implements ActionListener{

        Notepad adaptee;

        metalStyleMenuItem_actionAdapter(Notepad adaptee){

        this.adaptee = adaptee;

        }

        public void actionPerformed(ActionEvent evt){

        adaptee.metalStyleMenuItemActionPerformed(evt);

        }

        }

        // 定義Java風格事件類

        class windowsStyleMenuItem_actionAdapter implements ActionListener{

        Notepad adaptee;

        windowsStyleMenuItem_actionAdapter(Notepad adaptee){

        this.adaptee = adaptee;

        }

        public void actionPerformed(ActionEvent evt){

        adaptee.windowsStyleMenuItemActionPerformed(evt);

        }

        }

        // 定義幫助主題事件類

        class helpTopicMenuItem_actionAdapter implements ActionListener{

        Notepad adaptee;

        helpTopicMenuItem_actionAdapter(Notepad adaptee){

        this.adaptee = adaptee;

        }

        public void actionPerformed(ActionEvent evt){

        adaptee.helpTopicMenuItemActionPerformed(evt);

        }

        }

        // 定義關于軟件事件類

        class aboutMenuItem_actionAdapter implements ActionListener{

        Notepad adaptee;

        aboutMenuItem_actionAdapter(Notepad adaptee){

        this.adaptee = adaptee;

        }

        public void actionPerformed(ActionEvent evt){

        adaptee.aboutMenuItemActionPerformed(evt);

        }

        }

        // 定義退出事件類

        class exitMenuItem_actionAdapter implements ActionListener {

        Notepad adaptee;

        exitMenuItem_actionAdapter(Notepad adaptee){

        this.adaptee = adaptee;

        }

        public void actionPerformed(ActionEvent evt){

        adaptee.exitMenuItem_actionPerformed(evt);

        }

      【Java程序編寫記事本方法】相關文章:

      Java怎么編寫走馬燈程序08-19

      Java怎么編寫Oracle存儲過程09-15

      如何編譯java程序09-28

      Java編寫計算器的的常見做法01-22

      Java程序開發與運行環境06-21

      實現鼠標畫圖的Java程序06-22

      Java線程同步的方法10-25

      Java枚舉的常用方法10-05

      如何使用Swing編寫全屏程序09-20

      sun認證java程序員須知Java日志框架09-11

      主站蜘蛛池模板: 金秀| 日本精品视频一视频高清| 无码人妻中文中字幕一区二区| 东京热加勒比日韩精品| 甘谷县| 亚洲午夜av福利久久久一区| 人妻少妇av中文字幕乱码免费| 国产精品nv在线观看| 玉门市| 最新日韩精品视频在线| 日本免费一区在线播放| 午夜国产精品视频在线 | 国产精品涩涩涩一区二区三区免费 | 日韩精品中文字幕综合| 亚洲欧美v国产蜜芽tv| 国模偷拍视频一区二区| 另类人妖在线观看一区二区 | 国产一级淫片免费大片| 国产一区二区三区在线免费观看| 国产主播无套内射一区| 桃江县| 思南县| 边坝县| 永平县| 平远县| 津市市| 娱乐| 在线观看亚洲视频一区二区三区| 永嘉县| 南宫市| 久久精品这里就是精品| 忻州市| 日本啪啪一区二区三区| 国产成年无码aⅴ片在线观看| 嘉定区| 69av视频在线| 中文字幕日本人妻一区| 兴化市| 国产精品亚洲精品日产久久久| 动漫av纯肉无码av在线播放| 婷婷色在线视频中文字幕|