Programmieren in Java

Programmieren in Java

von: Fritz Jobst

Carl Hanser Fachbuchverlag, 2005

ISBN: 9783446406049

Sprache: Deutsch

561 Seiten, Download: 4772 KB

 
Format:  PDF, auch als Online-Lesen

geeignet für: Apple iPad, Android Tablet PC's Online-Lesen PC, MAC, Laptop


 

eBook anfordern

Mehr zum Inhalt

Programmieren in Java



7 Graphik-Anwendungen in Java (S. 269-270)

Das JDK enthält seit der Version 1.0 als „Alternative Window Toolkit" (vgl. [5], bzw. „Abstract Window Toolkit" im JDK) in dem Package java.awt eine umfangreiche Sammlung von Klassen zur Programmierung von graphischen Anwendungen und graphischen Benutzeroberflächen (GUI = Graphical User Interface). Damit kann man sowohl für Applets in HTML-Seiten als auch für Anwendungen, die unter den jeweiligen Betriebssystemen laufen, Vektorgraphiken und die Interaktion von Anwendern mit der GUI programmieren. Mit JDK 1.1 stellte Sun die Bearbeitung von Ereignissen auf das sog. Delegation- Event-Model nach dem Beobachter-Entwurfsmuster um. Ab dem JDK 1.2 stehen in Java 2 mit den sog. Swing-Klassen als Weiterentwicklung von Netscapes Internet Foundation Classes IFC leistungsfähige GUI-Bausteine im Java-System zur Verfügung.

Für graphische Benutzeroberflächen gibt es im JDK die üblichen Möglichkeiten: Menüs, Maus, Steuerelemente und Dialoge. Bei Applets gibt es Einschränkungen, denn aus Sicherheitsgründen dürfen die in Web-Seiten eingebetteten Applikationen nicht auf lokale Daten zugreifen. Damit entfallen für Applets Dialoge zum Anzeigen von Inhaltsverzeichnissen und zum Auswählen von Dateien.

Sog. Layout-Manager stellen flexible Methoden zur variablen Gestaltung von Benutzeroberflächen bereit, denn Anwendungen für das Internet müssen auf Bildschirmen jeder denkbaren Größe benutzbar sein.

Zur Einführung in GUI-Anwendungen in Java gehen wir in mehreren Schritten vor:

  • Struktur von GUI-Anwendungen: Übersicht, Strategien
  • Die Ereignissteuerung
  • Elemente des AWT und von Swing: technikorientiert, Grundlagen
  • Kurs: Projekte für graphische Benutzeroberflächen

Im ersten Punkt besprechen wir den Aufbau von GUI-Anwendungen, im zweiten Punkt die Ereignissteuerung von Java 1.1. Die dort benutzten Mechanismen sind auch für Beans wichtig. Im dritten Punkt führen wir die einzelnen Bestandteile des AWT sowie elementare Komponenten der Swing-Bibliotheken ein und stellen sie anhand einzelner Programm- Beispiele vertieft dar. Die Swing-Klassen enthalten leistungsfähige Controls, wie etwa das Tree-Control zur Bedienung von Systemen mit Hierarchie, bis hin zu Baukästen für interaktive Editoren. Eine ausführliche Darstellung der Möglichkeiten der Swing-Klassen findet sich etwa in [23]. Der Kurs beschäftigt sich dann mit typischen Projekten im Umfeld der GUI-Programmierung. Damit deckt dieses Kapitel auch einen weiten Bereich der Funktionalität von Applets ab, die gesondert in Kapitel 11 behandelt werden.

7.1 Struktur von GUI-Anwendungen

Mit Java 2 kann man GUI-Anwendungen nicht nur auf das AWT aufsetzen, sondern auch das Swing-Klassensystem als Basis für Anwendungen benutzen. Beim Design von Swing wurde bei den elementaren Möglichkeiten auf weitgehende Kompatibilität zu Ideen und Struktur des AWT geachtet. Deswegen behandelt die folgende Darstellung die Möglichkeiten von AWT und Swing so weit wie möglich parallel.

7.1.1 Hierarchie der Fenster: Fenster im Fenster...

Bei GUI-Anwendungen in Java ist zwischen den eingebetteten Applets bzw. Komponenten auf der einen Seite sowie den Fenstern („Windows") im Sinne der jeweiligen Plattform auf der anderen Seite zu unterscheiden.

Fenster unter java.awt

Die graphische Anwendung besteht aus einem Hauptfenster. Dies ist im Sinne von Java ein Container, der untergeordnete Fenster enthalten kann. Jeder dieser Container kann seinerseits wieder über Container als Komponenten verfügen, denn ein Container ist eine Component-Klasse im Sinne der Klassenhierarchie. So ergibt sich eine Hierarchie der Fenster im Sinne der Anordnung der graphischen Objekte auf der Bildschirmfläche, die klar von der oben angegebenen Klassenhierarchie zu unterscheiden ist. Der Container veranlasst seine Komponenten zu ihrer Darstellung.

Der einfachste Container in AWT ist ein Panel, der auch die Basis für Applets bildet. Panels können jedoch auch zur Montage von Controls oder anderer Komponenten in andere Fenster als Komponenten eingebaut werden, denn ein Panel ist Component.

Kategorien

Service

Info/Kontakt