我创建了一个JPanel
显示图像的自定义(让我们称之为MyPanel
),我已将其添加到JFrame
contentPane。
我想JFrame
自动调整大小以适应MyPanel
图像更改时的大小。
看来我需要打电话frame.pack()
才能做到这一点。pack()
从增加耦合调用,MyPanel
所以我不想这样做。
为了解决这个问题,我扩展了JFrame
(让我们称之为MyFrame
)并使观察者成为MyFrame
观察者,并且是MyPanel
可观察的。每当图像MyPanel
显示更改时,它都会通知侦听器,MyFrame
例如。然后在收到通知时MyFrame
调用。pack()
有没有更流畅的JFrame
根据内容调整大小的方法?