记事本
主要介绍用java code来实现 一个记事本。有新建文件和保存文件,关闭文件,退出等小功能。在此小编来给大家来分享一下这些源码!
</pre><pre name="code" class="java">import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.*;
import javax.swing.*;
/*
* MenuBar:菜单条,Menu:主菜单项,MenuItem:子菜单项
* MenuBarObject.add(MenuObject) 主菜单添加菜单条中
* setMenubar();将菜单添加到窗体中
*/
public class TextEditor extends Frame implements ActionListener{
MenuBar mainmenubar = new MenuBar(); // 声明菜单条
Menu file ; // 声明主菜单项
MenuItem nw ; // 子菜单项
MenuItem op ;
MenuItem cl ;
MenuItem ex ;
MenuItem sf ;
TextArea tx ; // 声明文本区对象
public TextEditor(String title){
super(title);
CloseHandler handler = new CloseHandler(); // 定义窗体事件的侦听器对象
this.addWindowListener(handler);
setSize(400,400); // 设置大小
setLocationRelativeTo(null); // 窗体在屏幕上居中
menuinit();
tx = new TextArea(); // 创建文本区对象
this.add(tx);
this.setVisible(true);
}
// 菜单构建与处理
void menuinit()
{
mainmenubar = new MenuBar(); // 定义主菜单栏
file = new Menu("文件");
nw = new MenuItem("新建文件夹");
op = new MenuItem("打开文件");
cl = new MenuItem("关闭文件");
sf = new MenuItem("保存文件");
ex = new MenuItem("退 出");
file.add(nw);
file.add(cl);
file.add(sf);
file.add(ex);
mainmenubar.add(file); // 将主菜单项加入主菜单栏
setMenuBar(mainmenubar); // 为窗体设置主菜单
nw.addActionListener(this);
op.addActionListener(this);
cl.addActionListener(this);
sf.addActionListener(this);
ex.addActionListener(this);
}
// 窗体的ActionEvent 处理
public void actionPerformed(ActionEvent e){
Object ob = e.getSource();
JFileChooser f = new JFileChooser();
if((ob==nw)||(ob==cl)){ // 选择新建文件或关闭文件子菜单项
tx.setText(" ");
}
else if(ob == op){
f.showOpenDialog(this);
StringBuffer s = new StringBuffer();
FileReader in;
try {
in = new FileReader(f.getSelectedFile());
while(true){
int b = in.read();
if(b== -1)
break ;
s.append((char)b);
}
tx.setText(s.toString()); // 将文件内容显示在文本区
in.close(); // 关闭文件
} catch (Exception e1) {
// TODO 自动生成的 catch 块
}
}
else if(ob == sf){
f.showSaveDialog(this); // 显示文件选择对话框
try{
FileWriter out = new FileWriter(f.getSelectedFile());
out.write(tx.getText());
out.close();
}catch(Exception ee){
}
}
else if(ob == ex){
System.exit(0); // 退出系统
}
}
public static void main(String[] args)
{
new TextEditor("简易文本编辑器");
}
}
// CloseHandler 实现窗体关闭
class CloseHandler extends WindowAdapter{
public void windowClosing(WindowEvent e){
System.exit(0);
}
}