1

我正在尝试自动调整应用程序左侧的大小。我在左边有一个 JTextField 和一个 JTree,在右边有 3 个 JButton。但我只是不知道如何使左侧自动调整大小。

我使用 Netbeans GUI Creator(或其他任何名称)完成了此操作,但没有 Netbeans 我不知道如何操作。(我通常不使用 Netbeans 进行编程,这只是一个例外,看看是否可以使用 Swing 进行编程。

这是 Netbeans 创建的代码:http: //pastebin.com/ERwY4rBC 这并不是代码完全无法使用,而是我想手动尝试一下。

GroupLayout 看起来不错,但 Oracle 网站说它主要用于 GUI 工具。那么,使用 GroupLayout 将不是“类似 Java”,或者我必须如何理解它?或者有没有更好的方法在没有 GroupLayout 的情况下实现这一点?

谢谢!

4

2 回答 2

3

因此,使用 GroupLayout 将不是“Java 之类”,或者我必须如何理解它

GroupLayout简而言之,手工编码真的很难,并且主要导致大量代码。但这不是“不像 Java”,它只是不是你想手工做的事情,而且之后的代码很难阅读,因为它相当冗长。

使用一些“嵌套布局”可以轻松实现您尝试实现的目标(根据屏幕截图)。如果您的主面板使用BorderLayout您将左侧可调整大小的面板放在其中BorderLayout.CENTER,而另一个不可调整大小的面板在BorderLayout.EAST您将获得所需的调整大小行为。

然后你只需要决定LayoutManager为这些单独的面板使用哪个。我认为 theBoxLayoutFlowLayoutwill 都做得很好。

于 2012-07-22T18:16:38.907 回答
3

帮自己一个忙,使用MigLayout来满足您的所有布局需求。手工编写UI特别方便。

他们的网站上有一个WebStart应用程序,它使用提供的代码示例演示不同的布局情况。

于 2012-07-22T19:45:49.530 回答