您的位置:首页 > 编程语言 > Java开发

使用Swing组件编写一个支持中文文本编辑程序ChineseTextEdit.java

2015-11-08 13:06 741 查看






importjavax.swing.*;
importjava.awt.*;
importjava.awt.event.*;
importjava.io.*;

publicclassChineseTextEditextendsJFrameimplementsActionListener{
JTextAreatexA;
JScrollPanescroll;
JButtonbut1;
JButtonbut2;
JButtonbut3;

ChineseTextEdit(Stringname){
super(name);
init();
}

voidinit(){

JPanelpan=newJPanel();
pan.setLayout(newBorderLayout());
pan.setBackground(Color.YELLOW);

texA=newJTextArea("",20,30);
texA.setLineWrap(true);//设置自动换行
scroll=newJScrollPane(texA);//设置滚动条
pan.add(scroll,BorderLayout.CENTER);

JPanelpan1=newJPanel();
pan1.setLayout(newGridLayout(1,3));//1行三列

but1=newJButton("保存");
pan1.add(but1);
but1.addActionListener(this);

but2=newJButton("取消");
pan1.add(but2);
but2.addActionListener(this);

but3=newJButton("退出");
pan1.add(but3);
but3.addActionListener(this);

pan.add(pan1,BorderLayout.SOUTH);
this.add(pan);

     Filef=newFile("F:\\text.txt");

if(f.exists())
{
try{
BufferedReaderbr=newBufferedReader(newFileReader("F:\\text.txt"));
StringstrLine;

while(br.ready()){
strLine=br.readLine();
texA.append(strLine);
}

br.close();
}
catch(IOExceptionie){
ie.printStackTrace();
}
}
else{
try{
f.createNewFile();
}
catch(IOExceptione){
e.printStackTrace();
}
}

}
publicvoidactionPerformed(ActionEvente){
if(e.getSource()==but1)
{
  try{
      BufferedWriterbw=newBufferedWriter(newFileWriter("F:\\text.txt"));//缓存写入
      StringstrLine=texA.getText();
      bw.write(strLine);bw.flush();bw.close();
    }
  catch(IOExceptionie)
  {
  ie.printStackTrace();
 }
}
elseif(e.getSource()==but2){
  texA.setText("");
}
elseif(e.getSource()==but3){
  dispose();//退出}
}/***@paramargs*/
publicstaticvoidmain(String[]args)
{//TODOAuto-generatedmethodstub
  ChineseTextEditf=newChineseTextEdit("test");
  f.pack();
  f.setVisible(true);
  f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: