java - 如何获取 GridBagLayout 的尺寸?

标签 java swing layout gridbaglayout preferredsize

我正在制作一个计算器。我使用 GridBagLayout 来排列按钮,到目前为止它看起来像这样:

normal calculator look

我试图找到网格的确切大小,以便我可以设置 JFrame 的大小来匹配它。在GridBagLayout API ,我找到了三种方法:maximumLayoutSizeminimumLayoutSizepreferredLayoutSize。我尝试了所有这三个并将 JFrame 设置为每个大小以查看它们是如何工作的:

当我查看 maximumLayoutSize 返回的尺寸时,它们非常庞大(数百万和数十亿)。

当我使用 minimumLayoutSize 返回的尺寸时,我得到 width=151,height=150,看起来像这样:

enter image description here

当我使用 preferredLayoutSize 返回的尺寸时,我得到 width=220,height=180,看起来像这样:

enter image description here

相反,我想要 GridBagLayout 的尺寸,当它看起来像第一张图片中那样正常时。我怎样才能得到这些尺寸?

最佳答案

调用,JFrame#pack ,它会根据框架装饰的需要和框架内容的首选大小来打包框架。

关于java - 如何获取 GridBagLayout 的尺寸?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22366853/

相关文章:

android - 如何为电视设置任何布局(宽度、高度)?

java - 平等地抢占多余空间

java - 与 Web 应用程序对话的独立 Java 类

IDE 外部的 Java 应用程序未使用 Weka 类

Java JScrollPane 有时无法成功调整大小

java - 将变量初始化为对现有对象的引用

css - 如果表格中的单元格中包含长文本,则表格将超出布局

java - JApplet运行时异常

java - 从 Java 1.7 到 Java 1.6 的“try catch”重构

java - 如何在java中声明调用二维数组?