有没有一种方法可以获取组件的“默认最小大小” /“内容大小”?
例如,我的意思是:如果您创建一个新的空JButton
,则其创建的最小大小为java.awt.Dimension[width=34,height=10]
,但是,如果您创建一个带有一些文本的新按钮,例如“ XXXXX” ”,则创建时的最小尺寸为[width=74,height=26]
。这就是我所说的“默认最小尺寸”或“内容尺寸”。
我的问题是:如果我需要更改按钮的minimumSize
(例如,实现GridBagLayout
的某些行为),但是我需要返回原来的默认最小尺寸,有办法吗?
您会说,很容易,将其保存到变量中...但是,如果我将其保存,然后又更改了组件的内容(因此,它的“内容大小”)?
因为,如果您尚未更改按钮minimumSize
,并且您更改了其文本,则其minimumSize
也会相应更改;但是,如果您更改其minimumSize,然后又更改其文本,则其minimumSize仍为“手动更改”,并且不会更新为新内容(文本已更改)。