您的位置:首页 > 产品设计 > UI/UE

自己写的javaGUI记事本

2016-12-06 13:36 274 查看
package com.wql.www;
import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;
import javax.swing.*;

import java.io.*;
public class MyNotePad extends JFrame{
 public static void main(String[] args) {

  

  new MyNotePad();
 }

 

 JTextArea jta = null;

 JMenuBar jmb = null;

 JMenu jm = null;

 JMenu jm2 = null;

 JMenu jm3 = null;

 JMenuItem jmi_1 = null;

 JMenuItem jmi_2 = null;

 public MyNotePad(){

  //添加组件

  this.addComponent();

  //添加监听

  this.addActionListener();

  

  this.setTitle(this.getTitle());

  this.setDefaultCloseOperation(EXIT_ON_CLOSE);

  this.setSize(800, 600);

  this.setVisible(true);

 }

 

 

 

 //添加监听

 public void addActionListener(){

  jmi_1.addActionListener(new Jmi1Listener());

  jmi_2.addActionListener(new Jmi2Listener());

 }

 //打开菜单

 class Jmi1Listener implements ActionListener{

  @Override

  public void actionPerformed(ActionEvent e) {

   JFileChooser jfc = new JFileChooser();

   jfc.showOpenDialog(null);

   jfc.setVisible(true);

   Jmi1Io(jfc);

  }

 }

 //保存菜单

 class Jmi2Listener implements ActionListener{

  @Override

  public void actionPerformed(ActionEvent e) {

   JFileChooser jfc = new JFileChooser();

   jfc.showSaveDialog(null);

   jfc.setVisible(true);

   Jmi2Io(jfc);

   

  }

 }

 

 public void Jmi1Io(JFileChooser jfc){

  String fileName = jfc.getSelectedFile().getAbsolutePath();

  this.setTitle(fileName);

  FileReader fr = null;

  BufferedReader br = null;

  String tempStr = "";

  String str = "";

  try {

   fr = new FileReader(fileName);

   br = new BufferedReader(fr);

   while((tempStr = br.readLine()) != null){

    str += tempStr + "\r\n";

   }

   jta.setText(str);

  } catch (Exception e) {

   e.printStackTrace();

  }finally {

   try {

    br.close();

    fr.close();

   } catch (Exception e2) {

    e2.printStackTrace();

   }

  }

 }

 public void Jmi2Io(JFileChooser jfc){

  String fileName = jfc.getSelectedFile().getAbsolutePath();

  FileWriter fw = null;

  BufferedWriter bw = null;

  String str = "";

  try {

   fw = new FileWriter(fileName);

   bw = new BufferedWriter(fw);

   str = jta.getText();

   bw.write(str);

  } catch (Exception e) {

   e.printStackTrace();

  }finally{

   try {

    bw.close();

    fw.close();

   } catch (Exception e2) {

    e2.printStackTrace();

   }

  }

 }

 

 //添加组件

 public void addComponent(){

  jta = new JTextArea();

  jmb = new JMenuBar();

  jm = new JMenu("文件");

  jm2 = new JMenu("编辑");

  jm3 = new JMenu("关于");

  jmi_1 = new JMenuItem("打开");

  jmi_2 = new JMenuItem("保存");

  this.setTitle("记事本");

  this.setJMenuBar(jmb);

  jmb.add(jm);

  jmb.add(jm2);

  jmb.add(jm3);

  jm.add(jmi_1);

  jm.add(jmi_2);

  this.add(jta);

 }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: