zoukankan      html  css  js  c++  java
  • 第十四周课程总结

    简单记事本的实现
    实验代码
    package jishiben;

    import java.awt.*;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;

    import javax.swing.*;
    import javax.swing.undo.UndoManager;

    import org.graalvm.compiler.debug.Indent;

    public class Jishiben implements ActionListener {

    JFrame frame;
    JTextArea text;
    JScrollPane sp;
    JMenuItem newItem,windomItem,openItem,saveItem,othersaveItem,pagesetupItem,printItem,closeItem;
    JMenuBar bar;
    JMenu fileMenu,editMenu,formatMenu,checkMenu,helpMenu;
    JFileChooser choose;
    File file;
    JTable table;
    JMenuItem blankItem;
    UndoManager undoManager;
    
    public void File() {
        
        frame=new JFrame("TMJ");
        text=new JTextArea();
        sp=new JScrollPane(text);
        bar=new JMenuBar();
        
        fileMenu=new JMenu("文件(F)");
        editMenu=new JMenu("编辑(E)");
        formatMenu=new JMenu("格式(O)");
        checkMenu=new JMenu("查看(V)");
        helpMenu=new JMenu("帮助(H)");
        
    
        newItem=new JMenuItem("新建(N)");
        windomItem=new JMenuItem("新窗口(W)");
        openItem=new JMenuItem("打开(O)");
        saveItem=new JMenuItem("保存(S)");
        othersaveItem=new JMenuItem("另存为(A)");
        pagesetupItem=new JMenuItem("页面设置(U)");
        printItem=new JMenuItem("打印(P)");
        closeItem=new JMenuItem("退出(X)");       
        
    
        newItem.setMnemonic('N');
        windomItem.setMnemonic('W');
        openItem.setMnemonic('O');
        saveItem.setMnemonic('S');
        othersaveItem.setMnemonic('A');
        pagesetupItem.setMnemonic('U');
        printItem.setMnemonic('P');
        closeItem.setMnemonic('X');
        
       
    
        newItem.setAccelerator(KeyStroke.getKeyStroke('N',KeyEvent.CTRL_DOWN_MASK));
        windomItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_DOWN_MASK|InputEvent.SHIFT_DOWN_MASK));
        openItem.setAccelerator(KeyStroke.getKeyStroke('O',KeyEvent.CTRL_DOWN_MASK));
        saveItem.setAccelerator(KeyStroke.getKeyStroke('S',KeyEvent.CTRL_DOWN_MASK));
        othersaveItem.setAccelerator(KeyStroke.getKeyStroke('S',KeyEvent.CTRL_DOWN_MASK|KeyEvent.SHIFT_DOWN_MASK));
        printItem.setAccelerator(KeyStroke.getKeyStroke('P',KeyEvent.CTRL_DOWN_MASK));
        
        
    
        bar.add(fileMenu);
        bar.add(editMenu);
        bar.add(formatMenu);
        bar.add(checkMenu);
        bar.add(helpMenu);
        
        
        frame.add(sp);
        frame.setJMenuBar(bar);
        frame.setSize(400,300);
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
        
        
    }
    
    public static void main(String[] args) {
        Jishiben shi=new Jishiben();
        shi.File();
    
    }
    public void actionPerformed(ActionEvent e){
    
        if(e.getSource()==newItem) {
            text.setText("");
        }else if(e.getSource()==windomItem) {
            Jishiben ben =new Jishiben();
            ben.File();
        }else if(e.getSource()==openItem) {
            choose=new JFileChooser();
            choose.showOpenDialog(null);
            file=choose.getSelectedFile();
            try {
                FileInputStream input=new FileInputStream(file);
                byte[] b=new byte[input.available()];
                input.read(b);
                text.append(new String(b));
                input.close();
                
            } catch (FileNotFoundException e1) {
                e1.printStackTrace();
            } catch (IOException e1) {
                e1.printStackTrace();
            }
        }else if(e.getSource()==othersaveItem) {
            choose=new JFileChooser();
            choose.showOpenDialog(null);
            file=choose.getSelectedFile();
            try {
                if(!file.exists()) {
                  file.createNewFile();
                }
                FileOutputStream output=new FileOutputStream(file);
                byte[] b=text.getText().getBytes();
                output.write(b);
                output.close();
            } catch (IOException e1) {
                e1.printStackTrace();
            }
        }else if(e.getSource()==saveItem) {
            choose=new JFileChooser();
            choose.showOpenDialog(null);
            file=choose.getSelectedFile();
            try {
                FileOutputStream output=new FileOutputStream(file);
                byte[] b=text.getText().getBytes();
                output.write(b);
                output.close();
            } catch (IOException e1) {
                e1.printStackTrace();
            }
        }else if(e.getSource()==pagesetupItem) {
            
        }else if(e.getSource()==printItem) {
            
        }else if(e.getSource()==closeItem) {
            System.exit(1);
        }
    }
    

    }
    运行截图

    总结:本次实验是对前几周所学知识的一次综合实验,讲组件、窗口等充分利用整合起来;让我对之前一些不怎么理解的东西加深了印象/

    JDBC总结:

    讲了MySQL数据库的安装配置以及使用;如:增加数据(INSERT INTO 表名字[字段]VALUES),删除数据(DELETE FROM 表名称 [删除条件]),更新数据(UPDATE 表名称 SET 字段 [WHERE 更新条件]),

  • 相关阅读:
    mysql查找数据库中是否已经存在某张表
    springboot中generator相关配置文件
    同步网络时间到linux服务器(先修改时区再进行同步网络时间)
    踩坑记:前后端分离的项目启动时间过长
    踩坑记:mysql timeStamp默认值0000-00-00 00:00:00 报错
    一次踩坑记录(使用rpc前后端分离服务总是注册不上)
    Maven项目结合POI实现导入导入导入导入导入Excl表格Demo-亲测可用
    Maven项目结合POI导出Excl表格Demo-亲测可用
    集合系列之fail-fast 与fail-safe 区别
    并发编程JUC系列AQS(CountDownLatch、CyclicBarrier、Semaphore)
  • 原文地址:https://www.cnblogs.com/dxl1314520/p/11959133.html
Copyright © 2011-2022 走看看