import java.awt.*;
import java.awt.event.*;
import java.io.*;public class tt
extends Frame
implements ActionListener {
static tt frm = new tt();
static MenuBar menubar = new MenuBar();
static Menu menu1 = new Menu("文件");
static MenuItem item1 = new MenuItem("打开");
static MenuItem item2 = new MenuItem("保存"); static FileDialog dia1 = new FileDialog(frm, "打开");
static FileDialog dia2 = new FileDialog(frm, "保存", FileDialog.SAVE);
static TextArea txa = new TextArea(); static WinLis wlis = new WinLis(); public static void main(String agrs[]) {
BorderLayout br = new BorderLayout();
frm.setTitle("小记事本"); menubar.add(menu1); menu1.add(item1);
menu1.add(item2); item1.addActionListener(frm);
item2.addActionListener(frm); frm.add(txa); frm.setMenuBar(menubar); frm.setSize(800, 650);
frm.setVisible(true); frm.addWindowListener(wlis);
frm.addWindowListener(wlis);
} static class WinLis
extends WindowAdapter {
public void windowClosing(WindowEvent e) {
frm.dispose();
} } public void actionPerformed(ActionEvent e) {
MenuItem item = (MenuItem) e.getSource();
if (item == item1) {
dia1.setVisible(true); String fname = dia1.getDirectory() + dia1.getFile();
try {
FileInputStream fi = new FileInputStream(fname);
byte ba[] = new byte[fi.available()];
fi.read(ba);
txa.setText(new String(ba));
fi.close();
}
catch (IOException ioe) {}
;
}
if (item == item2) {
dia2.setVisible(true);
String fname2 = dia2.getDirectory();
File file = new File(dia2.getFile() + ".txt");
String s = txa.getText(); try {
BufferedWriter out = new BufferedWriter(new FileWriter(fname2 + file));
out.write(s);
out.close(); }
catch (Exception ioe) {
ioe.printStackTrace();
} }
}
}
import java.awt.event.*;
import java.io.*;public class tt
extends Frame
implements ActionListener {
static tt frm = new tt();
static MenuBar menubar = new MenuBar();
static Menu menu1 = new Menu("文件");
static MenuItem item1 = new MenuItem("打开");
static MenuItem item2 = new MenuItem("保存"); static FileDialog dia1 = new FileDialog(frm, "打开");
static FileDialog dia2 = new FileDialog(frm, "保存", FileDialog.SAVE);
static TextArea txa = new TextArea(); static WinLis wlis = new WinLis(); public static void main(String agrs[]) {
BorderLayout br = new BorderLayout();
frm.setTitle("小记事本"); menubar.add(menu1); menu1.add(item1);
menu1.add(item2); item1.addActionListener(frm);
item2.addActionListener(frm); frm.add(txa); frm.setMenuBar(menubar); frm.setSize(800, 650);
frm.setVisible(true); frm.addWindowListener(wlis);
frm.addWindowListener(wlis);
} static class WinLis
extends WindowAdapter {
public void windowClosing(WindowEvent e) {
frm.dispose();
} } public void actionPerformed(ActionEvent e) {
MenuItem item = (MenuItem) e.getSource();
if (item == item1) {
dia1.setVisible(true); String fname = dia1.getDirectory() + dia1.getFile();
try {
FileInputStream fi = new FileInputStream(fname);
byte ba[] = new byte[fi.available()];
fi.read(ba);
txa.setText(new String(ba));
fi.close();
}
catch (IOException ioe) {}
;
}
if (item == item2) {
dia2.setVisible(true);
String fname2 = dia2.getDirectory();
File file = new File(dia2.getFile() + ".txt");
String s = txa.getText(); try {
BufferedWriter out = new BufferedWriter(new FileWriter(fname2 + file));
out.write(s);
out.close(); }
catch (Exception ioe) {
ioe.printStackTrace();
} }
}
}
当然,要不然sun还推出swing做啥。
import java.awt.event.*;
public class MyFrame extends Frame implements ActionListener
{
MenuItem mi11=new MenuItem("打开"),
mi12=new MenuItem("保存"),
mi13=new MenuItem("退出");
MenuItem mi21=new MenuItem("剪切"),
mi22=new MenuItem("复制"),
mi23=new MenuItem("粘贴"),
mi24=new MenuItem("删除"),
mi25=new MenuItem("修改"),
mi26=new MenuItem("插入"),
mi27=new MenuItem("查找"),
mi28=new MenuItem("替换");
MenuItem mi31=new MenuItem("关于");
Menu m1=new Menu("文件"),
m2=new Menu("编辑"),
m3=new Menu("帮助");
MenuBar mb=new MenuBar();
TextArea textarea;
TextField text1=new TextField();
FileDialog filedialog_load,
filedialog_save;
MyFrame()
{
super("文本编辑器");
textarea=new TextArea();
setVisible(true);
setSize(450,300);
addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent e){System.exit(0);}});
m1.add(mi11);m1.addSeparator();m1.add(mi12);m1.addSeparator();m1.add(mi13);
m2.add(mi21);m2.add(mi22);m2.add(mi23);m2.add(mi24);m2.addSeparator();m2.add(mi25);m2.add(mi26);m2.add(mi27);m2.add(mi28);
m3.add(mi31);
mi13.setShortcut(new MenuShortcut(KeyEvent.VK_E));
mb.add(m1);mb.add(m2);mb.add(m3);
setMenuBar(mb);
mi11.addActionListener(this); mi12.addActionListener(this);mi13.addActionListener(this);
add(textarea,BorderLayout.CENTER);
add(text1,BorderLayout.SOUTH);
filedialog_save=new FileDialog(this,"保存文件话框",FileDialog.SAVE);
filedialog_save.setVisible(false);
filedialog_load=new FileDialog(this,"打开文件话框",FileDialog.LOAD);
filedialog_load.setVisible(false);
filedialog_save.addWindowListener(new WindowAdapter()//对话框增加适配器
{ public void windowClosing(WindowEvent e)
{ filedialog_save.setVisible(false);
}
});
filedialog_load.addWindowListener(new WindowAdapter()//对话框增加适配器
{public void windowClosing(WindowEvent e)
{ filedialog_load.setVisible(false);
}
});
addWindowListener(new WindowAdapter() //窗口增加适配器
{public void windowClosing(WindowEvent e)
{ setVisible(false);System.exit(0);
}
});
}
public void actionPerformed(ActionEvent e) //实现接口中的方法
{ if(e.getSource()==mi12)
{ filedialog_save.setVisible(true);
}
else if(e.getSource()==mi11)
{ filedialog_load.setVisible(true);
}
else
{ System.exit(0);
}
}
public static void main(String[] args)
{
new MyFrame();
}
}
楼主,你的还有好多功能没完善。需要改进,想复制剪切,打开内容……
我的这个只完成了界面。还需要应用输入输出流实现某些功能。
%JAVA_HOME%\demo\jfc\Stylepad