Как мне пересчитать предпочтительный размер JComponent? - PullRequest
5 голосов
/ 11 января 2012

Я знаю тот факт, что когда я создаю экземпляр JComponent, он имеет собственный предпочтительный размер.Теперь давайте предположим, что я вручную установил значение PrePreferredSize для JComponent с размером 0 x 0. И я хочу, чтобы этот компонент «сбросил» свой собственный предпочитаемый размер.Как мне это сделать?

1 Ответ

9 голосов
/ 11 января 2012

1) Установка предпочтительного размера на ноль должна привести к сбросу компонента обратно к получению его предпочтительного размера, рассчитанного, как если бы он никогда не был установлен.

component.setPreferredSize(null);

Это может не делать то, что вы хотите, в зависимости от того, как вы сигнализируете, что макет должен быть переделан, но, по крайней мере, технически это ответ на ваш вопрос.

2) Обычно рекомендуется не использовать setPreferredSize, см. этот пост

...