Я делаю калькулятор. Я использовал GridBagLayout
для упорядочивания кнопок, и пока это выглядит так:
Я пытаюсь найти точный размер сетки, поэтому я могу установить размер JFrame
для его соответствия. В API GridBagLayout
я нашел три метода: maximumLayoutSize
, minimumLayoutSize
и preferredLayoutSize
. Я попробовал все три и установил JFrame
для каждого размера, чтобы посмотреть, как они работают:
Когда я посмотрел на размеры, возвращаемые maximumLayoutSize
, они были огромными (миллионы и миллиарды).
Когда я использовал размеры, возвращаемые minimumLayoutSize
, я получил width = 151, height = 150, который выглядит так:
Когда я использовал размеры, возвращенные preferredLayoutSize
, я получил width = 220, height = 180, который выглядит так:
Вместо этого я хочу размеры GridBagLayout, когда он выглядит нормально, как на первом снимке. Как я могу получить эти измерения?
Call, JFrame#pack
, он упакует кадр, основываясь на потребностях декодирования кадров и предпочтительном размере содержимого фреймов.
setSize
для окна ...