Java 在“组件大小调整”事件中设置组件的大小

Java 在“组件大小调整”事件中设置组件的大小,java,swing,jtextpane,componentlistener,Java,Swing,Jtextpane,Componentlistener,我有自己的类,它派生自JTextPane。我希望这个类的对象应该在给定大小的页面上划分他的内容。我只是在paintComponent方法的适当位置画一条线来划分页面 假设我写了一封信,我的窗格已调整大小,以便打印的信应该在下一页。我想调整我的窗格的大小,使其更大一页。我知道我应该编写一个ComponentListener并在componentResize方法中添加一些代码,但我不能明确使用setSize方法,因为它会生成另一个事件,我会得到异常。 因此,我怎样才能正确地做到这一点 另请参阅。然而

我有自己的类,它派生自
JTextPane
。我希望这个类的对象应该在给定大小的页面上划分他的内容。我只是在
paintComponent
方法的适当位置画一条线来划分页面

假设我写了一封信,我的
窗格
已调整大小,以便打印的信应该在下一页。我想调整我的窗格的大小,使其更大一页。我知道我应该编写一个
ComponentListener
并在
componentResize
方法中添加一些代码,但我不能明确使用
setSize
方法,因为它会生成另一个事件,我会得到异常。
因此,我怎样才能正确地做到这一点

另请参阅。然而,这不是我想要的…如果您发布一个工作示例,它将使生活更轻松:)。我做了一个小实验,结果是你可以在
KeyListener
setSize
,然后用
paintComponent
方法进行正常的绘制。这似乎起作用了。@KDM:A
DocumentListener
可能更灵活。@trashgood:不确定何时调用它。我猜在按键/重新喷漆等完成后。如果不看JDK源代码,我认为KeyListener是一个更好的选择。另请参阅。但这不是我想要的…如果您发布一个工作示例,它将使生活变得更轻松:)。我做了一个小实验,结果是你可以在
KeyListener
setSize
,然后用
paintComponent
方法进行正常的绘制。这似乎起作用了。@KDM:A
DocumentListener
可能更灵活。@trashgood:不确定何时调用它。我猜在按键/重新喷漆等完成后。不看JDK源代码,我认为KeyListener是一个更好的选择。