Java JTextArea和显示格式问题

Java JTextArea和显示格式问题,java,swing,awt,jtextarea,layout-manager,Java,Swing,Awt,Jtextarea,Layout Manager,所以,我有一个文本编辑程序,它更多地被设置为一个待完成的表单 我不确定如何创建程序的编辑器部分。 一方面,由于JTextArea的原因,我希望有一些布局,以便它根据输入的文本量(启用了换行字和所有)进行扩展和收缩 然而,我的文档是由一系列问题(和几个给定的答案)组成的。 一个问题(JTextArea)和答案(JTextArea)中的行数是可变的,就像每个问题的给定答案数一样 我的编辑区域是由一列页面组成的(根据需要可以添加和删除这些页面),我必须在某种程度上检测某个问题何时超出页面的范围(确切地

所以,我有一个文本编辑程序,它更多地被设置为一个待完成的表单

我不确定如何创建程序的编辑器部分。 一方面,由于JTextArea的原因,我希望有一些布局,以便它根据输入的文本量(启用了换行字和所有)进行扩展和收缩

然而,我的文档是由一系列问题(和几个给定的答案)组成的。 一个问题(JTextArea)和答案(JTextArea)中的行数是可变的,就像每个问题的给定答案数一样

我的编辑区域是由一列页面组成的(根据需要可以添加和删除这些页面),我必须在某种程度上检测某个问题何时超出页面的范围(确切地说是页面的边距)

所以最后,我需要某种半刚性的布局管理器。一方面,使JTextAreas可以使用setPreferredSize调整大小,另一方面,当页面被填满,添加任何其他内容都会破坏页面的审美外观时,会检测到这种情况,并将程序移动到下一页

需要记住的一点是,我打算让用户能够在文档中添加/删除整个问题和一些答案,而不必在最后添加/删除

(整个过程只用于将文档呈现给用户(并使其可编辑),稍后将其导出为pdf,但这完全是另一回事)


我甚至不需要使用JTextAreas(如果你有更好的东西),你可以推荐任何类型的外部java库,我只想让它工作…

你可以检测高度,以固定宽度显示JEditorPane的某些内容

所以,一步一步地添加内容,测量是否达到了允许的高度。完成后,创建一个新页面


或者,您可以使用分页(此处描述)将所有内容添加到JEditorPane中。

为什么不使用
JEditorPane
——一个用于编辑各种内容的文本组件。这似乎需要滚动窗格,而不仅仅是一个特别巧妙的布局。没有滚动窗格。我代表一张A4纸,所有东西都必须是二维的,没有重叠。使用滚动窗格可能会解决定位组件的问题,但它并不能真正解决我的问题。。。