zoukankan      html  css  js  c++  java
  • 第十三周课程总结&第八次实验总结

    实验总结

    实验内容

    1、题目

    完成一个简单的记事本
    

    2、实验代码

    package Work9;
    
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.awt.event.InputEvent;
    import java.awt.event.KeyEvent;
    import java.io.*;
    import javax.swing.*;
    
    public class TextPad implements ActionListener {
    
    	JFrame frame;
    	JMenuBar bar;
    	JMenu fileMenu, editMenu;
    	JMenuItem newItem, openItem, saveItem, saveasItem, closeItem;
    	ImageIcon newIcon, openIcon, saveIcon, saveasIcon, closeIcon;
    	JScrollPane scroll;
    	JTextArea area;
    	JFileChooser chooser;
    	File file;
    
    	public TextPad() {
    		frame = new JFrame("XZY的记事本");
    		bar = new JMenuBar();
    		fileMenu = new JMenu("文件");
    		editMenu = new JMenu("编辑");
    		newIcon = new ImageIcon("d:" + File.separator + "JavaWork" + File.separator + "1.png");
    		openIcon = new ImageIcon("d:" + File.separator + "JavaWork" + File.separator + "2.png");
    		saveIcon = new ImageIcon("d:" + File.separator + "JavaWork" + File.separator + "3.png");
    		saveasIcon = new ImageIcon("d:" + File.separator + "JavaWork" + File.separator + "4.png");
    		closeIcon = new ImageIcon("d:" + File.separator + "JavaWork" + File.separator + "5.png");
    		newItem = new JMenuItem("新建(N)", newIcon);
    		openItem = new JMenuItem("打开(O)", openIcon);
    		saveItem = new JMenuItem("保存(S)", saveIcon);
    		saveasItem = new JMenuItem("另存为(A)", saveasIcon);
    		closeItem = new JMenuItem("关闭(X)", closeIcon);
    		area = new JTextArea();
    		scroll = new JScrollPane(area);
    
    		newItem.setMnemonic(KeyEvent.VK_N);
    		openItem.setMnemonic(KeyEvent.VK_O);
    		saveItem.setMnemonic(KeyEvent.VK_S);
    		saveasItem.setMnemonic(KeyEvent.VK_A);
    		closeItem.setMnemonic(KeyEvent.VK_X);
    
    		newItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N, InputEvent.CTRL_DOWN_MASK));
    		openItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, InputEvent.CTRL_DOWN_MASK));
    		saveItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, InputEvent.CTRL_DOWN_MASK));
    		saveasItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A, InputEvent.CTRL_DOWN_MASK));
    		closeItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, InputEvent.CTRL_DOWN_MASK));
    
    		fileMenu.add(newItem);
    		fileMenu.add(openItem);
    		fileMenu.add(saveItem);
    		fileMenu.add(saveasItem);
    		fileMenu.addSeparator();
    		fileMenu.add(closeItem);
    
    		newItem.addActionListener(this);
    		openItem.addActionListener(this);
    		saveItem.addActionListener(this);
    		saveasItem.addActionListener(this);
    		closeItem.addActionListener(this);
    
    		bar.add(fileMenu);
    		bar.add(editMenu);
    
    		frame.setJMenuBar(bar);
    		frame.add(scroll);
    		frame.setSize(400, 300);
    		frame.setVisible(true);
    
    	}
    
    	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);
    						byte[] b = new byte[fis.available()];
    						fis.read(b);
    						area.append(new String(b));
    						fis.close();
    					
    				} catch (FileNotFoundException e) {
    					
    					e.printStackTrace();
    				} catch (IOException e) {
    					
    					e.printStackTrace();
    				}
    			}else if(item == saveItem) {
    				if(file!=null) {
    					try {
    						PrintStream out = new PrintStream(new FileOutputStream(file));
    						out.print(this.area.getText());
    						out.close();
    					} catch (FileNotFoundException e) {
    						
    						e.printStackTrace();
    					}
    				}
    				
    			}else if(item == saveasItem) {
    				chooser.showSaveDialog(null);
    				file = chooser.getSelectedFile();
    				if(!file.exists()) {
    					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);
    		}
    	}
    	
    	
    
    }
    }
    
    package Work9;
    
    public class Test {
    
    	public static void main(String[] args) {
    		new TextPad();
    	}
    
    }
    
    

    3、实验结果









    4、实验总结

    本次实验内容老师上课给我们展示过,我们只需要在上面修改一些,再加上一些功能就好了,还计较容易理解。
    

    课程总结

    一、事件处理
       1、键盘事件及其监听
       2、鼠标事件及其监听
       3、鼠标拖拽事件及其监听
    二、单选钮:JRadioButton
    三、复选框:JCheckBox
    四、菜单组件
    五、文件选择框
    

    事件处理

    键盘事件及其处理


    1、定义方法

    2、常用方法

    鼠标事件及其处理


    1、定义方法

    2、常用方法

    鼠标拖拽事件及其处理


    1、常用方法

    单选钮:JRadioButton


    1、常用方法

    2、事件处理
    ①定义方法

    ②常用方法

    复选框:JCheckBox

    定义及常用方法

    菜单组件

    JMenuBar

    1、常用方法

    JMenu

    1、常用方法

    JMenuItem

    1、常用方法


    文件选择框

    JFileChooser


    1、常用方法

    2、三种返回状态

    这就是本周的学习内容,图形界面也学完了,也可以开始一些比较复杂的编程了,下周就要学习数据库了,好像挺复杂的,得加油了!!!
    
  • 相关阅读:
    HDU 1010 Tempter of the Bone
    HDU 4421 Bit Magic(奇葩式解法)
    HDU 2614 Beat 深搜DFS
    HDU 1495 非常可乐 BFS 搜索
    Road to Cinema
    Sea Battle
    Interview with Oleg
    Spotlights
    Substring
    Dominating Patterns
  • 原文地址:https://www.cnblogs.com/xzy999123/p/11907780.html
Copyright © 2011-2022 走看看