像Eclipse,NetBeans,jEdit,他们的编辑区 怎么做的呢
能针对各种语言 高亮显示 代码格式化 匹配 缩进 叠加 好神奇。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
这个东西不好做呀。
要用java做的话,有两种选择,swing或SWT,两者提供了两套完全不一样的文本组件,SWT更方便些,像语法高亮、提示、折叠之类的功能,都有直接的支持;swing的话,就是text包里那一堆东西,比较麻烦,没有直接支持,像语法高亮,需要自己进行分词、着色,比较麻烦。
jEdit是使用swing实现的,swing的JTextPane具有做这种编辑区的潜力,但效率比较低,因此作者几乎重写了swing的text包,基础编辑器面板是直接从JComponent扩展而来,工作量很大;估计netbeans也差不多。