JScrollPane中的JEditorPane没有根据需要调整大小

sv_*_*_in 5 java swing resize jeditorpane jscrollpane

我正在我的应用程序中实现一个注释框工具,用户可以使用鼠标调整大小.此注释框包含一个滚动窗格,其中包含一个JEditorPane用户可以插入注释的内容.我在滚动窗格中添加了编辑器窗格,原因如下:

自动掠夺jeditorpane

当用户调整注释框的大小时,我正在设置所需的大小JScrollPaneJEditorPane.当用户增加评论框的大小时,这些组件的大小会根据需要增加,但是当评论框的大小JEditorPane减小时,即使在设置大小之后,大小也不会减小.这导致滚动窗格内的滚动条.

我试着用setPreferrredSize,setSize,setMaximumSizeJEditorPane.编辑器窗格的大小仍然没有减少.我尝试调用revalidate()updateUI()在设置大小后但没有用.

我使用的是Java 1.4.2.

请给我一些见解....

Mik*_*e B 9

我意识到这已经很久了,但是为了将来的参考,你需要做的就是覆盖getScrollableTracksViewportWidth()总是返回true,例如.

JEditorPane pane = new JEditorPane() {
    public boolean getScrollableTracksViewportWidth() {
        return true;
    }
};
panel.add(new JScrollPane(pane));
Run Code Online (Sandbox Code Playgroud)


lui*_*bal -1

减小 JScrollPane 中 JEditorPane 的大小然后再减小它是不可能的。您可能想改用 JTextArea。