SWING中的代码/文本折叠

时间:2011-04-14 12:37:09

标签: java swing folding

我正在寻找一种为摆动JTextArea或JTextPane提供'文本折叠'功能的方法

更具体地说,我想在文本组件中添加一个数据块,我希望组件只显示一些标题行。然后用户可以通过单击某个图标展开该块。这就像大多数IDE中的代码折叠功能一样。

经过一番彻底的搜索后我发现了->some sample code<-,但这里使用的机制对我来说非常模糊,当我尝试从文档中删除文本时它停止工作。

使用XML作为输入可能是一个主角吗?

2 个答案:

答案 0 :(得分:5)

这一个如何添加可折叠区域 http://java-sl.com/collapse_area.html

这一个如何表示XML http://java-sl.com/xml_editor_kit.html

答案 1 :(得分:0)

我首先看一下NetBeans API:http://bits.netbeans.org/dev/javadoc/org-netbeans-modules-editor-fold/overview-summary.html

如果你自己动手,你需要提供一个Document实现,让JTextComponent认为正在添加或删除部分,然后附加告诉文档的点击事件更新自己。很多工作。

从视觉上看,使用JEditorPane也可能更好,但这可能更有效。