Standard Widget Toolkit (SWT) und JFace

Kursziele

Das von IBM entwickelte Standard Widget Toolkit (SWT) ist eine Bibliothek zur Erstellung grafischer Oberflächen in Java. Eine sinnvolle Ergänzung, das UI-Toolkit JFace, erlaubt komplexere Widgets aus den SWT-Basiskomponenten zu bauen und stellt eine Abstraktionsschicht (Viewer) für den Zugriff auf die Komponenten bereit. So entstehen portable Java-Applikationen mit nativer Plattform-Performanz und Oberfläche. Eclipse ist die wohl bekannteste Entwicklungsoberfläche, die SWT und JFace einsetzt. Nach dem Vergleich verschiedener Java Gui-Bibliotheken schreiben die Teilnehmer das erste SWT-Programm und machen sich im Weiteren mit allen wichtigen Klassen aus SWT und JFace vertraut.

Zielgruppe

Software-Entwickler

Empfohlene Dauer

3 Tage, insgesamt 18 Zeitstunden

Inhalte

[LOGO]
  • Überblick über Java Gui-Bibliotheken
    - ›Abstract Window Toolkit‹ (AWT) und Swing
    - ›The Standard Widget Toolkit (SWT)‹, Lizenz und Verfügbarkeit
    - JFace und SWT im Vergleich
    - Rich Client Frameworks und Web-Frameworks
  • Erstes SWT-Programm
    - Installation der SWT-Bibliotheken, Versionen
    - SWT-Design
    - SWT und der Garbage Collector
    - Display, Shell, SWT-Konstanten
    - Label und Button, Tooltips
    - Schaltflächen-Typen: SWT.PUSH, SWT.ARROW, SWT.TOGGLE, SWT.CHECK, SWT.RADIO
    - Link-Widget
    - Gui-Builder
    - Layout-Manager: FillLayout, RowLayout, GridLayout, FormLayout, StackLayout
    - Open-Source und eigene Layout-Manager
  • Ereignisverarbeitung
    - Prinzip der Ereignisverarbeitung: Auslöser und Listener
    - Ungetypte und getypte Listener
    - SelectionListener, DisposeListener, ControlListener
    - Fokus mit FocusListener überwachen
    - Mausbewegungen überwachen
    - Weitere Listener
  • SWT-Widgets und Events
    - Vererbungshierachie der SWT-Widgets
    - SWT-Paket org.eclipse.swt.widgets
    - Basisklassen Widget und Control, Dekoratoren
    - Grafiken laden und verwalten
    - Einfache Texteingabe
    - List und Combo
    - Slider, ScrollBar, ProgressBar
    - Container, Composites: Group, SashForm, TabFolder
    - MVC-Konzept
    - Tabellen und Bäume
    - Custom-Controls: CCombo, CLabel, CTabFolder, SashForm, StyledText, TableTree
    - BusyIndicator
  • Grafiken zeichnen
    - Graphic-Context (GC) für einen Canvas
    - Farben, Formen, Text
    - Grafiken, Bildverarbeitung
    - Java2D-API im SWT
    - OpenGL
  • JFace
    - ApplicationWindow, WindowManager
    - Viewers: TreeViewer, ListViewer, TableViewer
    - Zelleneditoren
    - Form-Layout: FormData, FormAttachment
  • Menüs, Symbolleisten und Aktionen
    - Menüs, Menüzeile, Separatoren, Untermenüs
    - Shortcuts
    - Action-Klassen
    - Popup-Menüs
    - Symbolleisten (ToolBar und CoolBar)
    - Statuszeile
  • SWT- und JFace-Dialoge, Formulare, Wizards
    - Einfache Dialoge für Nachrichten
    - Verzeichnisauswahl und Dateiauswahldialog
    - Zeichensatz wählen, Farbauswahl
    - Eigene Dialoge aufbauen
    - JFace-Dialoge: Fehler anzeigen, Eingaben, Fortschrittsanzeige, ProgressIndicator
    - Modale Operationen
    - Eclipse Forms API
    - Wizard-Seiten: IDialogPage, WizardDialog, IWizardPage, WizardPage
  • Textkomponenten
    - Einfache Texteingaben, Passwort-Felder
    - StyledText
    - LineStyleListener, LineBackgroundListner
    - TextViewer und Document
    - Undo und Redo
    - Suchen und Ersetzen
    - Farbliche Hervorhebung, Vorschlagsliste
  • Weitere Themen
    - Internationalisierung
    - Drag und Drop, Zwischenablage
    - Drucken
    - Web-Browser einbinden
    - Preferences-API
    - SWT und Swing integrieren, SwingWT und SWTSwing
    - Ausblick auf die Eclipse Rich Client Platform
    - Rich AJAX Platform (RAP)

Voraussetzungen

Der Kurs ›Java für Fortgeschrittene‹, ›Java für Umsteiger‹ oder vergleichbare Kenntnisse.

Seminarunterlagen

Deutschsprachige Unterlagen (Kopien der Folien), Zertifikat.

Software

Als Laufzeitumgebung wird standardmäßig Java SE 6 von Sun zusammen mit der Entwicklungsumgebung Eclipse 3.4 eingesetzt (Paket Eclipse IDE for Java EE Developers).

Unternehmen

  • Eclipse Foundation

[Addthis] [Google Bookmarks] [Yahoo! Bookmarks] [Delicius] [Mister Wong]

[Nach oben]