中文java编辑器_自己开发的java中文处理编辑器

本文介绍了作者开发的一个简单的Java中文处理编辑器,通过限制JTextArea输入并监听键盘事件,弹出解析窗口实现类似中文输入法的功能。文章详细阐述了TextDocument、PopupDocument的重载方法,以及编辑器类TextFrame和解析器窗口类PopupFrame的设计和实现。
摘要由CSDN通过智能技术生成

自己开发的java中文处理编辑器

作者:未知    文章来源:www.jspcn.net

发布日期:2005年01月19日

近日,闲来无事,突然想做一个java版的中文输入法。前天晚上躺在床上整理了一下思路,觉得如果想做成想紫光一样,难度和工作量都比较大,但比较简单的汉字处理编辑器还是可以写一写的,就算是一个小“demo”吧。

在思考如何实现这个“demo”之前,有一个比较棘手的问题以前没有处理过。我最近一年一直都在写web的java程序,swing方面疏远了不少(虽然以前也不是很强,呵呵)。这个问题就是如何实现像紫光输入法一样,在文本编辑器中,弹出一个中文解析窗口。在学校的bbs上问了一下,知道可以用JWindow实现,但知道的时候,我已经用自己一个JFrame的子类实现了功能,也就懒得该了。

下面我们来浏览一下程序概要:

1、首先,我要在编辑器中的JTextArea限制输入,对a -- z 的字符进行解析,而不是让其

直接输入JTextArea中。所以,我创建了一个TextDocument,该类继承了javax.swing.text.PlainDocument,

并重载了insertString方法。部分代码如下:

/**插入字符串的触发事件,对于任何一个小写的字母,不让输入,以便输入法PopupFrame进行转换*/ public void insertString( int offset, String s, AttributeSet attributeSet ) throws BadLocationException { if(s.length() == 0){ return; } String endChar = s.substring(s.length()-1); //如果输入的是 a -- z 的字符,那么需要输入法转换而不是显示,否则可以直接进行显示 if( endChar.compareTo("a")>=0 && endChar.compareTo("z")<=0){ super.insertString( offset,s.substring(0,s.length()-1), attributeSet ); }else{ super.insertString( offset,s, attributeSet ); } }

2、其次,我创建了一个PopupDocument,该类继承了javax.swing.text.PlainDocument,

并重载了insertString方法。部分代码如下:

/**插入字符串的触发事件,对于任何

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
======================= 手机编辑器BCB版自述文件 ======================= -------- 版权声明 -------- 作者Ahui保留所有权利。 你可以以个人身份在非商业活动中使用本软件,任何 涉及商业活动的使用权,请与作者本人书面联系。 信箱:ahui@cn.gs 主页:http://ahui.cn.gs 请参考http://ahui.cn.gs/production/phone/index_bcb.html. -------- 系统需求 -------- Pentuim以上CPU win98/2000/xp IE5及以上版本 ------------ 发行文件列表 ------------ PhoneEditor.exe 主程序 readme.txt 本文件 history.xml 历史记录文件 -------- 功能列表 -------- 1.读取手机信息 2.读取手机电话本(SIM卡) 3.读取手机电话本(机身) 4.读取手机短消息(SIM卡) 5.读取手机短消息(机身) 6.编辑电话本 7.添加电话本记录 8.手机短消息发送 9.手机短消息发送记录(xml文件) 10.电话本在电脑文件(xml文件)中的保存/导入 11.短消息在电脑文件(xml文件)中的保存/导入 12.......(电话本的电脑与手机同步功能未完成) -------- 使用步骤 -------- 1.使用数据线连将手机连接到电脑的串口上(或使用红外口)。 2.运行本软件,自动查找所连接的串口。 3.或使用菜单连接手机的相应串口。 4.查看手机信息。容量为0的相关项目则表示不支持。 5.进行手机短消息及电话本的编辑、保存、恢复等操作。 6.可发送短消息。 ------------------ 已测试手机支持列表 ------------------ 机型 读电话本(机身) 读电话本(SIM卡) 读短消息(机身) 读短消息(SIM卡) SIEMENS 3568i 支持 支持 支持 支持 ERICSSON R320 不支持中文 不支持中文 支持 支持 ERICSSON T39 支持 支持 支持 支持 ALCATE OT710 不支持 支持 不支持 支持 说明:不支持包含两种情况,一种如R320的电话本,无法读出中文,因此标记为不支持。另一种 如OT710的短消息不支持机身保存,自然无法读取。特例为OT710,机身电话本能保存,本程序 暂时无法读取。 请您将手机的使用情况按上述格式反馈给我。不胜感激。 ------------ 版本更新记录 ------------ 1.1.0.0 BUG FIX 1.修正长时间读数据时程序死锁 ¦;ok 2.修正对不支持功能操作时非正常退出的问题 3.界面修改 功能增加 1.自动确定手机所在串口 1.0.0.11 除错发行 1.0.0.9 完成基本功能

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值