使用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);
}
}
相关文章推荐
- java Equals解析
- java布局学习 (一)
- Spring事务控制
- java基本数据类型
- java变量
- javase中的集合
- spring 加载property文件的方式
- 希尔排序 java 实现
- java回调函数
- java获取当前浏览器及IE浏览器乱码其他浏览器正常解决方案
- Struts2+Hibernate整合应用开发步骤
- Spring JDBC 使用入门(1)
- 图学java基础篇之IO
- 图学java基础篇之IO
- Java学习笔记(九)——继承
- 利用AbstractRoutingDataSource实现动态数据源切换
- Java集合类
- JAVA中的Final关键字的使用
- spring mvc 环境搭建 demo 的开发
- Struts2配置详解_配置Action