Java Was ist der Unterschied zwischen den Klassen JFrame und Frame?
Ich arbeite zur zeit mit dem Layoutmanager GridBagLayout und habe da etwas komisches festgestellt. Wenn ich in meine GridBagLayout Klasse "extends Frame" reinpacke, und dann ganz normal die GridBagConstraints Objekte und die Parameter zuweise, etc. läuft alles wunderbar.
Wenn ich aber extends JFrame einbette, und die ganzen deklarierten Objekte auch umbenenne z.B. von Button in JButton, von TextArea zu JTextArea etc. dann kommt am ende beim Fenster eine komplett falsche formatierung heraus, die sich scheinbar auch nicht ändern lässt.
Verträgt sich JFrame einfach nicht mit dem GridBagLayout oder mach ich irgendwas falsch?
1 Antwort
Wenn Du an einer AWT App arbeitest, solltest du Frame benutzen, für eine Swing App JFrame. Eigenltich gibt's ja dieser Tage nur noch Swing Apps.
Ein anderer Ansatz wäre es einen anderen LayoutManager zu benutzen; GridBagLayout hat ja was von einem Dinosaurier und hat eine komplizertes API. So was GridLayout2 (wie GridLayout mit variablen Zeilen- und Spaltengrössen) oder SGLayout (noch mehr Optionen) sind da deutlich einfacher zu bedienen.