用RTF实现文本编辑器中对关键字的高亮显示(2)
来源:互联网 发布:股票java接口 编辑:程序博客网 时间:2024/05/04 18:33
今天头疼了,脾气很不好,但是还好,昨天在编辑器上出现的问题得到了解决。
如(1)中所说的,对关键字的高亮显示已经完成(虽然我想效率很低吧)。那么下一个问题就是如何在用户进行编辑的时候实时的对关键字进行标记。刚开始的时候,觉得蛮简单的,根本没当回事来考虑,相应JEditorPane的文本改变时间就mo问题了,结果看了一下,JEditorPane没法相应这个事件。所以最后在光标事件(CarteEvents)中来相应。
随之而来的一个问题就是,按照我的那种方式进行标记需要在这个事件响应中重写EditorPane的内容,那么,CaretEvent会被激活,本来这不能算是问题的,在事件相应的时候DisableEvents就可以了,但是不行(可以DisableAWTevent,但是SWING,不行),如果可以,请哪位兄弟告知。所以昨天被郁闷了一天。
最后用的办法,就是在相应事件的时候,先把事件的apater给remove掉,最后在装上,结果证明可行。但是又出现问题,在相应的方法内调用JEditorPane 的setText方法出错,如果是原文没问题,如果文本发生变化,就出错。原因不知,估计与线程之间的start 有关系,解决办法是用了一个多线程内类,用它来setText。
现在看我的这个编辑器,实在是个很拙劣的东西啊.
接下来开始做语法检查,说是语法检查,但是就我看,其实应该是括号匹配问题,因为我读不了.h文件,也没有内建编译器。
继续努力中...
如(1)中所说的,对关键字的高亮显示已经完成(虽然我想效率很低吧)。那么下一个问题就是如何在用户进行编辑的时候实时的对关键字进行标记。刚开始的时候,觉得蛮简单的,根本没当回事来考虑,相应JEditorPane的文本改变时间就mo问题了,结果看了一下,JEditorPane没法相应这个事件。所以最后在光标事件(CarteEvents)中来相应。
随之而来的一个问题就是,按照我的那种方式进行标记需要在这个事件响应中重写EditorPane的内容,那么,CaretEvent会被激活,本来这不能算是问题的,在事件相应的时候DisableEvents就可以了,但是不行(可以DisableAWTevent,但是SWING,不行),如果可以,请哪位兄弟告知。所以昨天被郁闷了一天。
最后用的办法,就是在相应事件的时候,先把事件的apater给remove掉,最后在装上,结果证明可行。但是又出现问题,在相应的方法内调用JEditorPane 的setText方法出错,如果是原文没问题,如果文本发生变化,就出错。原因不知,估计与线程之间的start 有关系,解决办法是用了一个多线程内类,用它来setText。
现在看我的这个编辑器,实在是个很拙劣的东西啊.
接下来开始做语法检查,说是语法检查,但是就我看,其实应该是括号匹配问题,因为我读不了.h文件,也没有内建编译器。
继续努力中...
- 用RTF实现文本编辑器中对关键字的高亮显示(2)
- 用RTF实现文本编辑器中对关键字的高亮显示(1)
- jQuery高亮显示文本中重要的关键字
- Flex中对文本实现高亮显示
- 浅谈JavaScript实现关键字文本高亮显示
- 写自己的文本编辑器(一): 高亮关键字
- 一个让TextView的文本中制定关键字高亮显示的工具类
- Android中TextView的文本内容中指定关键字高亮显示
- asp.net中利用Lucene.net实现检索并对检索关键字高亮显示
- c#-RTF文本编辑器
- 用js实现文本点击搜索,文本高亮显示
- javascript 对html内容的关键字高亮显示
- PHP对关键字进行高亮显示
- ListView实现简单的关键字高亮显示
- Android 高亮变色显示文本中的关键字
- coreseek实现关键字高亮显示
- javascript 关键字高亮显示实现代码
- 在extjs中实现的文本编辑器
- 警惕:不要贪便宜,买路边的笔记本电脑
- asp+vml画图收藏
- 与ViewState相关联的.Net FrameWork类库
- 山西地图
- struts学习心得--资源文件
- 用RTF实现文本编辑器中对关键字的高亮显示(2)
- 数据库设计总结
- 简单的排名次问题
- [代码生成] 使用Java与XSLT的10条技巧
- 球面两点间的球面距离的计算(2)
- (转贴)如何在应用程序状态条中加入Bitmap位图
- 使用GUID作为数据表主键的好处
- 巧把Hotmail邮箱2M轻易扩容到25M
- 散列函数中的碰撞 (copy过来备忘,准备写代码)