JTextPane是否支持文本内存分页?
我正在尝试改进文档显示组件的现有实现。 表达的一个担忧是,当加载大量文本时,我们将获得OOMexception。
根据我之前使用.net的经验,我知道一些基本组件实现了分页,因此没有所有文本都可视化加载到文档中,因此事情不仅工作得更快,而且我们也希望避免出现OOMexception。
所以我想知道是否有支持这些function的基本摆动组件,特别是JTextPanel?
感谢您的帮助,非常感谢
不, JTextPane
不支持内存页面。 您可以创建Docuemnt
实例并将文件内容读入Document
而无需在JTextPane
安装Document
。 然后得到Document
所需片段并将其插入另一个仅显示所需片段的片段。
似乎Swing将文档的实际存储与其表示分离。
我认为你应该能够通过定义一个负责内存管理(例如分页)的AbstractDocument.Content
实现来获得你想要的function。
DefaultStyledDocument
在其构造函数中采用AbstractDocument.Content
,而JTextPane
采用StyledDocument
,因此如果您定义该实现,则应该能够将其插入。
我没有试过这个,所以这只是一个建议 – 你可能能够在网上找到实现。