找一个用Java写的文本编辑器代码
导入Java . awt . event . *;
导入javax . swing . *;
导入Java . io . *;
公共类MyTextEditor扩展JFrame实现ActionListener、ItemListener、MouseListener
{
私有文件File;
私有JTextArea textarea
private JRadioButtonMenuItem rbmi _ red、rbmi_blue、rbmi _ green
private JMenuItem menuitem_copy、menuitem_cut、menuitem_paste、menuitem _ seek
private JMenuItem menuitem_song,menuitem_fang,menuitem _ kai//字体变量
private JMenuItem menuitem _ normal,menuitem_bold,menuitem _ italic//字体变量
private JMenuItem menuitem_20,menuitem_30,menuitem _ 40//字体大小变量
private JMenuItem menuitem_exit,menuitem _ infor
私人JPopupMenu popupmenu
private JMenuItem menuitem_red、menuitem_green、menuitem_blue。
私有JDialog对话框,dialog 1;
私有JButton button _ seek
私有JTextField textfield _ seek
private JLabel label_seek,label _ infor
字符串查找;
公共MyTextEditor()
{
超级(“文本编辑器”);
this.setSize(400,300);
this.setLocation(360,300);
this . setdefaultcloseoperation(HIDE _ ON _ CLOSE);
container ss = this . getcontentpane();
this . textarea = new JTextArea();
JScrollPane DD = new JScrollPane(textarea);
ss . add(DD);
textarea . addmouse listener(this);
this . addmenu();
this . set visible(true);
这个。dialog();
这个。dialog 1();
this.file = null
}
公共MyTextEditor(字符串文件名)
{
this();
如果(文件名!=空)
{
this.file =新文件(文件名);
this.setTitle(文件名);
this . textarea . settext(this . read from file());
}
}
公共MyTextEditor(文件File)
{
this();
如果(文件!=空)
{
this.file = file
this . settitle(this . file . getname());
this . textarea . settext(this . read from file());
}
}
Public void Dialog() //建立对话框的方法
{
Dialog=new JDialog(this,“search”,true);
dialog . set layout(new flow layout());
dialog.setSize(200,90);
Label_seek=new JLabel("查找内容");
dialog . add(label _ seek);
textfield _ seek = new JTextField(10);
dialog . add(textfield _ seek);
button _ seek = new JButton(" search ");
dialog . add(button _ seek);
button _ seek . addactionlistener(this);
}
公共void对话框1()
{
Dialog1=new JDialog(这个,“专利”,真);
dialog 1 . set layout(new FlowLayout());
dialog1.setSize(200,100);
Label_infor=new JLabel("刘同虎造");
dialog 1 . add(label _ infor);
}
公共void addMenu()
{
JMenuBar menubar = new JMenuBar();
this . setjmenubar(menubar);
JMenu menu _ file = new JMenu(" file ");//文件菜单
menubar . add(menu _ file);
j menuitem menuitem _ open = new j menuitem(" open ");
menu _ file . add(menuitem _ open);
menuitem _ open . addactionlistener(this);
j menuitem menuitem _ save = new j menuitem(" save ");
menu _ file . add(menuitem _ save);
menuitem _ save . addactionlistener(this);
j menuitem menuitem _ save as = new j menuitem("另存为");
menu _ file . add(menuitem _ save as);
menuitem _ save as . addactionlistener(this);
menuitem _ exit = new JMenuItem(" exit ");
menu _ file . add(menuitem _ exit);
menuitem _ exit . addactionlistener(this);
menuitem _ infor = new JMenuItem(" information ");
menu _ file . add(menuitem _ infor);
menuitem _ infor . addactionlistener(this);
JMenu menu _ editor = new JMenu(" edit ");//编辑菜单
menubar . add(menu _ editor);
menuitem _ seek = new JMenuItem(" search ");
menu _ editor . add(menuitem _ seek);
menuitem _ seek . addactionlistener(this);
menuitem _ copy = new JMenuItem(" copy ");
menuitem _ copy . addactionlistener(this);
menu _ editor . add(menuitem _ copy);
menuitem _ cut = new JMenuItem(" cut ");
menu _ editor . add(menuitem _ cut);
menuitem _ cut . addactionlistener(this);
menuitem _ paste = new JMenuItem(" paste ");
menu _ editor . add(menuitem _ paste);
menuitem _ paste . addactionlistener(this);
JMenu item menu _ color = new JMenu(" color ");//颜色菜单
menu_editor.add(菜单_颜色);
button group button group = new button group();
rbmi _ red = new jradiobottonmenuitem(" red ",true);
button group . add(rbmi _ red);
menu _ color . add(rbmi _ red);
rbmi _ red . additem listener(this);
rbmi _ blue = new jradiobottonmenuitem(" blue ",true);
button group . add(rbmi _ blue);
menu _ color . add(rbmi _ blue);
rbmi _ blue . additem listener(this);
rbmi _ green = new jradiobottonmenuitem(" green ",true);
button group . add(rbmi _ green);
menu _ color . add(rbmi _格林);
rbmi _ green . additem listener(this);
JMenu menu _ font = new JMenu(" set font ");//设置字体菜单
menubar . add(menu _ font);
menuitem _ Song = new JMenuItem(" Song Ti ");
menu _ font . add(menuitem _ song);
menuitem _ song . addactionlistener(this);
Menuitem_fang=new JMenuItem("仿宋");
menu _ font . add(menuitem _ Fang);
menuitem _ Fang . addactionlistener(this);
Menuitem_kai=new JMenuItem("斜体");
menu _ font . add(menuitem _ kai);
menuitem _ kai . addactionlistener(this);
JMenu menu _ style = new JMenu(" set font ");//设置字体菜单
menubar . add(menu _ style);
menuitem _ bold = new JMenuItem(" bold ");
menu _ style . add(menuitem _ bold);
menuitem _ bold . addactionlistener(this);
menuitem _ italic = new JMenuItem(" italic ");
menu _ style . add(menuitem _ italic);
menuitem _ italic . addactionlistener(this);
JMenu menu_size=new JMenu("设置字体大小");//设置字体大小菜单
menubar . add(menu _ size);
menuitem _ 20 = new JMenuItem(" 20 ");
menu _ size . add(menuitem _ 20);
menuitem _ 20 . addactionlistener(this);
menuitem _ 30 = new JMenuItem(" 30 ");
menu _ size . add(menuitem _ 30);
menuitem _ 30 . addactionlistener(this);
menuitem _ 40 = new JMenuItem(" 40 ");
menu _ size . add(menuitem _ 40);
menuitem _ 40 . addactionlistener(this);
popup menu = new JPopupMenu();//快捷菜单
j menuitem menuitem _ red = new j menuitem(" red ");
popup menu . add(menuitem _ red);
menuitem _ red . addactionlistener(this);
j menuitem menuitem _ green = new j menuitem(" green ");
popup menu . add(menuitem _ green);
menuitem _ green . addactionlistener(this);
menuitem _ blue = new JMenuItem(" blue ");
popup menu . add(menuitem _ blue);
menuitem _ blue . addactionlistener(this);
textarea . add(popup menu);//向文本区域添加快捷菜单
}
Public void写入文件(字符串行)//写入文件。
{
尝试
{
FileWriter fout = new FileWriter(this . file);
fout . write(lines+" \ r \ n ");
fout . close();
}
捕捉(IOException ioex)
{
返回;
}
}
公共字符串readFromFile() //读取文件
{
尝试
{
FileReader fin = new FileReader(this . file);
buffered reader bin = new buffered reader(fin);
String aline= " ",lines =
做
{
aline = bin . readline();
如果(aline!=空)
lines+= aline+" \ r \ n ";
} while (aline!= null);
bin . close();
fin . close();
返回线路;
}
捕捉(IOException ioex)
{
返回null
}
}