如何重新计算JComponent的首选大小?

Wil*_*ino 5 java swing jcomponent

我知道当我创建一个JComponent的实例时,它有自己的首选大小.现在让我们假设我setPreferredSize手动JComponent的维度为0 x 0.我希望该组件"重置"自己的preferredSize.我怎么做?

Tor*_*mod 9

1)将首选大小设置为null应该重新将组件重置为计算其首选大小,就像从未设置它一样.

component.setPreferredSize(null);
Run Code Online (Sandbox Code Playgroud)

这可能不会做你想要的,取决于你如何表示应该重做布局 - 但至少它在技术上是你的问题的答案.

2)通常建议不要使用setPreferredSize,请参阅此帖子