我正在寻找一种为摆动JTextArea或JTextPane提供'文本折叠'功能的方法
更具体地说,我想在文本组件中添加一个数据块,我希望组件只显示一些标题行。然后用户可以通过单击某个图标展开该块。这就像大多数IDE中的代码折叠功能一样。
经过一番彻底的搜索后我发现了->some sample code<-,但这里使用的机制对我来说非常模糊,当我尝试从文档中删除文本时它停止工作。
使用XML作为输入可能是一个主角吗?
答案 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
也可能更好,但这可能更有效。