java - 在 Java Swing 中换行文本

标签 java swing layout-manager

好吧,我现在有点绝望。我希望你们能帮忙。

我需要使用 Java Swing 布局内容面板。问题是,每个内容都是不同的。所以我需要一个可以针对每个内容调整自身大小的面板。基本上 LayoutManager 是为了什么而发明的。

我需要一个左面板和一个右面板。面板的宽度应该是固定的。高度应根据给定内容进行调整

|<---- 30% ------->|<----- 70% -------------------->|

我以为很容易,但它就是行不通。我尝试了不同的布局管理器。其中一些保留了 30% 规则,但不包装内容,只是将它们显示在一行中(BorderLayout)。 如果 LayoutManager 确实支持换行(即使它仅适用于 HTML 文本,但这对我来说很好),它不会支持固定宽度。两者的结合对我来说也不起作用。

请注意,我需要坚持使用 Swing,并且不能使用其他更高级的库,因为我正在开发的系统坚持使用 Java 1.5。此外,我知道总屏幕宽度,因此我可以计算面板的宽度以使用固定宽度,但我需要灵活处理高度。

最佳答案

您可以通过使用嵌套的 BorderLayouts 来实现此目的。首先将面板的布局设置为 BorderLayout

之后,对于每个左右面板,再次将布局设置为 BorderLayout。在此级别,您将设置 %30 和 %70 比率。

在此布局中,将您的内容添加到 NORTH 布局。这将使您的面板高度能够匹配给定的内容。

关于java - 在 Java Swing 中换行文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51799690/

相关文章:

java - JpaPagingReader 在选择期间请求超时

java - 如何停止循环然后继续?

java - 用Java绘制不断增大的图像

java - 在我的 GUI (java) 中显示 CMD 输出

java - 如何让TableSorter将一行保持在固定位置?

java - 需要了解一些 `ant fat/shaded` jar概念

java - 有没有使用 maven 运行可执行 jar 的好方法?

java - 在 Java 中的 Swing 中自己的布局

java - 子面板中 BoxLayout 的问题

java - JFrame布局: Header and 2 Text Areas