Vorlesung Informatik 1 - Teil A: Java Kurs
1.7 Fenster-basierte Anwendungen mit Swing
Wir wollen möglichst schnell grafische-interaktive Anwendungen programmieren.Das Paket javax.swing enthält die dazu notwendigen Klassen, die ersten die wir brauchen sind:
- JFrame: Anwendungsfenster.
JFrame fenster = new JFrame("Beispiel");
fenster.setSize(500,300); // Pixel
fenster.setVisible(true);
Weitere Aspekte:
fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // sonst läuft Anwendung weiter - JPanel: Container, auf dem man verschiedene
Bedienelemente gruppieren kann
- JButton: Schaltfläche auf die man klickt
- JLabel: Text
Anordnung von Elementen auf der Oberfläche: LayoutManager
FlowLayout: (standard) zeilenweise von
links nach rechts. Elemente minimiert.
GridLayout: Raster (Zeilen, Spalten), Elemente
maximiert.
BorderLayout: fünf Bereiche Center, West, EAST, NORTH, SOUTH , Elemente
Maximiert
this.
add(p, BorderLayout.NORTH);
- JTextField: einzeliges Eingabefenster
- JTextArea: mehrzeiliges Eingabefenster
- JScrollPane: Scrollbalken um ein Element, z.B. um eine JTextArea(zeilen, spalten)
- JTabbedPane: Karteikasten mit Reitern
Die Basisklasse StandardAnwendung
Swing Anwendungen brauchen eine komplexe Umgebung, um sicher zu laufen. Um das alles aufzusetzen, nutzen wir die eigene Klasse tools.StandardAnwendung.
class Aufgabe999 extends StandardAnwendung{
public static void main(String[] a){
starteAnwendung();
}
public
Einfach(){
super("Einfaches Beispiel", 500, 700);
...
}
Weiterführende Links
Kapitel zu Swing in Java ist auch eine Insel