简短的版本:我需要做一些棘手的事情来让 JDialog 的 setMaximumSize() 工作吗?
完整版:我有一个 JDialog(布局管理器:BorderLayout),它包含一个滚动窗格和一个底部带有提交按钮的 JPanel。
滚动窗格包含一个在系统其他地方动态构建的 JPanel。
我想要的是让对话框在 JPanel 周围动态调整自身大小到一定大小,然后开始增长滚动条。这或多或少是默认情况下发生的情况,除了最大尺寸似乎是我的显示器的尺寸。
我认为这是从 java.awt.Component 继承的 .setMaximumSize() 方法所做的,但设置它似乎没有任何效果。
设置首选大小确实有效果 - 但无论如何,对话框总是那个大小,这真的不是我想要的。
(如果我在滚动窗格上设置最大/首选大小属性,效果是一样的。)
我错过了一些非常明显的事情吗?是否有一些我不知道的古怪 JDialog / BorderLayout / MaximumSize 交互?