Ich habe eine benutzerdefinierte JPanel
erstellt, die Bilder anzeigt (nennen wir es MyPanel
), ich habe dies zu JFrame
's contentPane hinzugefügt.Wie man die Größe von JFrame nach Inhalt automatisch ändert
Ich möchte JFrame
, um die Größe automatisch angepasst werden, um die MyPanel
passen, wenn Bild ändert.
Es sieht so aus, als müsste ich frame.pack()
anrufen, um dies zu tun. Der Aufruf von pack()
von MyPanel
erhöht die Kopplung, also möchte ich das nicht tun.
die Frage, die ich JFrame
erweitert zu lösen (nennen wir es MyFrame
) und machte MyFrame
Beobachter und MyPanel
beobachtet werden. Wenn das Bild MyPanel
Änderungen anzeigt, benachrichtigt es die Listener MyFrame
für diese Instanz. Und dann ruft MyFrame
pack()
, wenn es die Benachrichtigung erhält.
Gibt es eine glattere Art der Größenänderung JFrame
nach seinem Inhalt?
Ja, mein Ansatz war vernünftig. Danke für die Genehmigung :) – nimcap