使用Swing组件编写一个支持中文文本编辑程序ChineseTextEdit.java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*; public class ChineseTextEdit extends JFrame implements ActionListener{
JTextArea texA;
JScrollPane scroll;
JButton but1;
JButton but2;
JButton but3; ChineseTextEdit(String name){
super(name);
init();
} void init(){ JPanel pan = new JPanel();
pan.setLayout(new BorderLayout());
pan.setBackground(Color.YELLOW); texA = new JTextArea("",20,30);
texA.setLineWrap(true);//设置自动换行
scroll = new JScrollPane(texA);//设置滚动条
pan.add(scroll,BorderLayout.CENTER); JPanel pan1= new JPanel();
pan1.setLayout(new GridLayout(1,3));//1行三列 but1 = new JButton("保存");
pan1.add(but1);
but1.addActionListener(this); but2 = new JButton("取消");
pan1.add(but2);
but2.addActionListener(this); but3 = new JButton("退出");
pan1.add(but3);
but3.addActionListener(this); pan.add(pan1,BorderLayout.SOUTH);
this.add(pan);
File f = new File("F:\\text.txt");
if(f.exists())
{
try{
BufferedReader br = new BufferedReader(new FileReader("F:\\text.txt"));
String strLine;
while(br.ready()){
strLine = br.readLine();
texA.append(strLine);
}
br.close();
}
catch(IOException ie){
ie.printStackTrace();
}
}
else{
try{
f.createNewFile();
}
catch(IOException e){
e.printStackTrace();
}
}
}
public void actionPerformed(ActionEvent e){
if(e.getSource() == but1)
{
try{
BufferedWriter bw = new BufferedWriter(new FileWriter("F:\\text.txt"));//缓存写入
String strLine = texA.getText();
bw.write(strLine); bw.flush(); bw.close();
}
catch(IOException ie)
{
ie.printStackTrace();
}
}
else if(e.getSource() == but2){
texA.setText("");
}
else if(e.getSource() == but3){
dispose();//退出 }
} /** * @param args */
public static void main(String[] args)
{ // TODO Auto-generated method stub
ChineseTextEdit f = new ChineseTextEdit("test");
f.pack();
f.setVisible(true);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
使用Swing组件编写一个支持中文文本编辑程序ChineseTextEdit.java的更多相关文章
- SnowNLP:一个处理中文文本的 Python 类库[转]
SnowNLP是一个python写的类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理库基本都是针对英文的,于是写了一个方便处理中文的类库,并且和Te ...
- SnowNLP:一个处理中文文本的 Python 类库
https://segmentfault.com/a/1190000000362372
- 推荐 | 中文文本标注工具Chinese-Annotator(转载)
自然语言处理的大部分任务是监督学习问题.序列标注问题如中文分词.命名实体识别,分类问题如关系识别.情感分析.意图分析等,均需要标注数据进行模型训练.深度学习大行其道的今天,基于深度学习的 NLP 模型 ...
- Swing组件Jtree,JTablePane选项卡运用
今天开始写技术博客,说实话,本没有什么技术,说是总结也好,说是分享也罢,总之是想自己有意识的做一些事情,作为一名即将毕业的大学生,总是想以最好的状态,去面向社会,今天就是我准备好了的时候,本人将技术博 ...
- netty系列之:轻轻松松搭个支持中文的服务器
目录 简介 netty的HTTP支持 netty中使用HTTP的原理 100 (Continue) Status 为netty搭建HTTP服务器 总结 简介 之前讲了那么多关于netty的文章,都是讲 ...
- Qt 编写应用支持多语言版本--一个GUI应用示例
简介 上一篇博文已经说过如何编写支持多语言的Qt 命令行应用,这一篇说说Qt GUI 应用多语言支持的坑. 本人喜欢用代码来写布局,而不是用 Qt Designer 来设计布局,手写布局比 Qt De ...
- 【Swing/文本组件】定义自动换行的文本域
文本域组件:Swing中任何一个文本域(JTextArea)都是JTestArea类型的对象.常用的构造方法如下 public JTextArea() public JTextArea(String ...
- Java基础---Java---网络编程---TCP的传输、客户端和服务端的互访、建立一个文本转换器、编写一个聊天程序
演示TCP的传输的客户端和服务端的互访 需求:客户端给服务端发送数据,服务端收到后,给客户端反馈信息. 客户端: 1.建立Socket服务,指定要连接方朵和端口 2.获取Socket流中的输出流,将数 ...
- 二、 编写一个类,用两个栈实现队列,支持队列的基本操作(add,poll,peek)
请指教交流! package com.it.hxs.c01; import java.util.Stack; /* 编写一个类,用两个栈实现队列,支持队列的基本操作(add,poll,peek) */ ...
随机推荐
- 杂项-DB:ETL(数据库仓库技术)
ylbtech-杂项-DB:ETL(数据库仓库技术) ETL,是英文 Extract-Transform-Load 的缩写,用来描述将数据从来源端经过抽取(extract).交互转换(transfor ...
- CXF2.7.7 java.lang.RuntimeException: Cannot create a secure XMLInputFactory
cxf-2.7.7.jar neethi-3.0.2.jar stax2-api-3.1.1.jar woodstox-core-asl-4.2.0.jar wsdl4j-1.6.3.jar xmls ...
- Django开发之路 二(django的models表查询)
django的models表查询 一.单表查询 (1) all(): 查询所有结果 # 返回的QuerySet类型 (2) filter(**kwargs): 它包含了与所给筛选条件相匹配的对象 #返 ...
- css元素垂直居中方法
1.Line-height 适用情景:单行文字垂直居中技巧 这个方式应该是最多人知道的了,常见于单行文字的应用,像是按钮这一类对象,或者是下拉框.导航此类元素最常见到的方式了.此方式的原理是在于将单行 ...
- 关于Angular官网《英雄指南》教程几点问题修正(此问题在2018年4月份有效,以后可能就订正了)
1.官网中在导入“of”关键字时的引用为: import { Observable, of } from 'rxjs'; 应该改为: import { Observable } from 'rxjs/ ...
- Object-oriented programming
Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects&qu ...
- Springboot统一异常处理(@ControllerAdvice)
import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind ...
- Android S5PV210 fimc驱动分析 - fimc_capture.c
fimc_capture.c在FIMC系统中的位置,网上偷来的一幅图片 http://blog.csdn.net/kickxxx/article/details/7733482 43 static c ...
- webpack配置相关的页面异常
原文:https://www.cnblogs.com/Hsong/p/9023341.html 前言 在团队协作开发中,为了统一代码风格,避免一些低级错误,应该设有团队成员统一遵守的编码规范.很多语言 ...
- axios统一拦截配置
在vue项目中,和后台进行数据交互使用axios.要想统一处理所有的http请求和响应,就需要使用axios的拦截器.通过配置http response inteceptor 统一拦截后台的接口数据, ...