Swing Grundlagen. Andre Eichmann



Ähnliche Dokumente
Kap. 35 Swing: Grundlagen Kap Swing: Hauptfenster

Einstieg in die Informatik mit Java

Objektorientierte Softwareentwicklung

Zentrale Objekte zur Programmierung graphischer Benutzeroberflächen (GUI)

Swing Lernen am Code Teil 1

Handbuch ECDL 2003 Professional Modul 3: Kommunikation Kalender freigeben und andere Kalender aufrufen

Handbuch ECDL 2003 Modul 2: Computermanagement und Dateiverwaltung Der Task-Manager

Anleitung über den Umgang mit Schildern

Java I Vorlesung 11 Graphische Oberflächen mit Swing

Satzhilfen Publisher Seite Einrichten

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: MORE Projects GmbH

Handbuch ECDL 2003 Basic Modul 5: Datenbank Access starten und neue Datenbank anlegen

Mozilla Firefox - Zeit für den Wechsel

Professionelle Seminare im Bereich MS-Office

Programme im Griff Was bringt Ihnen dieses Kapitel?

PocketPC.ch Review. SBSH ilauncher 3.1. Erstelldatum: 3. Dezember 2007 Letzte Änderung: 3. Dezember PocketPC.ch_Review_iLauncher.

FH-SY Chapter Version 3 - FH-SY.NET - FAQ -

1. Allgemein Speichern und Zwischenspeichern des Designs Auswahl der zu bearbeitenden Seite Text ergänzen Textgrösse ändern 3

Zwischenablage (Bilder, Texte,...)

Bereich METIS (Texte im Internet) Zählmarkenrecherche

Arbeiten mit UMLed und Delphi

Dazu stellen Sie den Cursor in die Zeile, aus der eine Überschrift werden soll, und klicken auf die gewünschte Überschrift.

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Anton Ochsenkühn. amac BUCH VERLAG. Ecxel für Mac. amac-buch Verlag

GUI Programmierung in Java

Einführungskurs MOODLE Themen:

Menü Macro. WinIBW2-Macros unter Windows7? Macros aufnehmen

Objektorientierte Software-Entwicklung

Grundlagen der Programmierung APPLETS

Anleitung zur Verwendung der VVW-Word-Vorlagen

GUI Programmierung mit javax.swing

Lehrer: Einschreibemethoden

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1

SF-RB. Zeit- und Aufgabenmanagement. SF-Software Touristiksoftware

3. Die tägliche -Flut effizient verwalten

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Erstellen von x-y-diagrammen in OpenOffice.calc

Informatik Kurs Simulation. Hilfe für den Consideo Modeler

Kontakte Dorfstrasse 143 CH Kilchberg Telefon 01 / Telefax 01 / info@hp-engineering.com

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

UMSTELLUNG DER RÖNTGEN-SCHNITTSTELLE DÜRR-DBSWIN AUF DÜRR-VDDS

Webalizer HOWTO. Stand:

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Übung 1. Explorer. Paint. Paint. Explorer

1. Melden Sie sich als Administrator an und wechseln Sie zum Desktop

Anleitung zum neuen Überaumbuchungssystem der Hochschule für Musik und Tanz Köln

ecaros2 - Accountmanager

Zahlen auf einen Blick

Bedienung des Web-Portales der Sportbergbetriebe

Jederzeit Ordnung halten

GEVITAS Farben-Reaktionstest

2. Im Admin Bereich drücken Sie bitte auf den Button Mediathek unter der Rubrik Erweiterungen.

Lieferschein Dorfstrasse 143 CH Kilchberg Telefon 01 / Telefax 01 / info@hp-engineering.com

Excel Auswertungen in XAuftrag / XFibu

Schrittweise Anleitung zur Erstellung einer Angebotseite 1. In Ihrem Dashboard klicken Sie auf Neu anlegen, um eine neue Seite zu erstellen.

! Tipps und Tricks Sie können den Windows Explorer am einfachsten mit der Tastenkombination Windows+ E öffnen.

Übung - Konfigurieren einer Windows 7-Firewall

Handbuch ECDL 2003 Professional Modul 1: Textverarbeitung Absätze formatieren

2. Die ersten Schritte mit Windows 7 einfach bewältigen

HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

SMS-Dienst SMS-Dienst procar informatik AG Stand: FS 04/2011 Eschenweg Weiterstadt 1

Import und Export von Übergängern

Handbuch ECDL 2003 Basic Modul 6: Präsentation Diagramm auf einer Folie erstellen

FORUM HANDREICHUNG (STAND: AUGUST 2013)

Anbindung des eibport an das Internet

1. Trennlinie mit hr Eine dünne Trennlinie wie die obige in der Regio-Farbe (gelb) kann man recht einfach erstellen. Dafür reicht der Befehl

Hilfe zur Dokumentenverwaltung

Mit dem sogenannten Seriendruck können Etiketten und Briefe mit einer Adressdatei (z. B. Excel) verknüpft werden.

PDS Terminkalender Anwender-Dokumentation

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

Hilfe zum Webviewer Plan(&)Co Ihr Baubüro bei BMO August 2006

ECDL Europäischer Computer Führerschein. Jan Götzelmann. 1. Ausgabe, Juni 2014 ISBN

iphone- und ipad-praxis: Kalender optimal synchronisieren

Anwendertreffen 20./21. Juni

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Kaiser edv-konzept, Inhaltsverzeichnis

GSD-Radionik iradionics Android-App

Die Arbeitsweise von Flash

Excel Pivot-Tabellen 2010 effektiv

Windows 8.1. Grundkurs kompakt. Markus Krimm, Peter Wies 1. Ausgabe, Januar inkl. zusätzlichem Übungsanhang K-W81-G-UA

4. BEZIEHUNGEN ZWISCHEN TABELLEN

WinWerk. Prozess 6a Rabatt gemäss Vorjahresverbrauch. KMU Ratgeber AG. Inhaltsverzeichnis. Im Ifang Effretikon

DELFI. Benutzeranleitung Dateiversand für unsere Kunden. Grontmij GmbH. Postfach Bremen. Friedrich-Mißler-Straße Bremen

4.1 Wie bediene ich das Webportal?

Hinweise zum Übungsblatt Formatierung von Text:

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version September

Animationen erstellen

Flyer, Sharepics usw. mit LibreOffice oder OpenOffice erstellen

Mediator 9 - Lernprogramm

Carolo Knowledge Base

Angaben zu einem Kontakt...1 So können Sie einen Kontakt erfassen...4 Was Sie mit einem Kontakt tun können...7

Handbuch ECDL 2003 Modul 2: Computermanagement und Dateiverwaltung Dateien löschen und wiederherstellen

Anleitungen TYPO 3 Eingaben tätigen

Installation OMNIKEY 3121 USB

Wenn nicht alle alles mitbekommen sollen: Surfspuren vollständig beseitigen

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar ZID Dezentrale Systeme

ACDSee 10. ACDSee 10: Fotos gruppieren und schneller durchsuchen. Was ist Gruppieren? Fotos gruppieren. Das Inhaltsverzeichnis zum Gruppieren nutzen

Transkript:

Swing Grundlagen Andre Eichmann

Inhaltsverzeichnis Swing: Grundlagen - Einleitung - Ein einleitendes Beispiel Swing: Container und Menüs - Hauptfenster - Menüs

Swing: Grundlagen Nachteile von AWT: - Schwierig, plattformübergreifendes Look-And-Feel zu realisieren - Zu kleine Grundmenge an Dialogelementen, großer Aufwand Eigenschaften von Swing: - Nur noch in sehr eingeschränkter Weise plattformspezifische GUI-Ressourcen - Alles wird von Swing selbst gezeichnet

Swing: Grundlagen Vorteile: - Keine plattformspezifischen Besonderheiten, einfacherer Code - Gleiches Aussehen und Bedienung, gleiche Oberfläche - Komplexe Dialogelemente wie Bäume, Tabellen, Registerkarten können komplett plattformunabhängig realisiert werden Pluggable Look-And-Feel: - Aussehen und Bedienung kann zur Laufzeit geändert werden - Windows hat 3 vordefinierte (Metall, Motif, Windodws) - Es können eigene geschrieben werden - Kein zusätzlicher Aufwand des Programms nötig zum Umschalten (wird über Menüs realisiert) - Das Umschalten wird vom User-Interface-Manager erledigt (koordiniert alles)

Swing: Grundlagen Modell-View-Controller Prinzip (MVC): - Code nicht in einer Klasse, sondern 3 Bestandteile: - Modell enthält Daten des Dialogelementes, speichert den Zustand - View für grafische Darstellung verantwortlich - Controller Verbindungsglied zwischen beiden. Empfängt Tastatur Mausereignisse, stößt richtige Maßnahmen an Nachteile der Swing: - Ressourcenhungrig, da alles selbst gezeichnet wird - Applet-Programmierer haben keinen Browser mit eingebauter Swingunterstützung - Die Probleme werden aber angegangen (Bugs behoben, bessere Rechner, bessere Umsetzung)

Swing: Grundlagen Beispielprogramm für ersten Eindruck

Swing: Grundlagen Erläuterungen und erste Befehle im Beispiel: JFrame: - Klasse zum Erzeugen von Hauptfenstern (eine von vier) - Ähnliche Eigenschaften wie Frame - Der Unterschied ist, dass man mit add nicht einfach die Komponenten auf dem Fenster platzieren kann JPanel: - Hier wird auf dem JPanel die Buttonleiste und das Textfeld platziert - Dient dazu, um viele Dialogelemente unter Kontrolle eines Layoutmanagers anzuordnen - Die Dialogelemente und der Layoutmanager werden direkt zugewiesen

Swing: Grundlagen JLabel: - Ein Dialogelement zur Anzeige (eines meist unveränderlichen) Textes - Im Gegensatz zum Label kann ein JLabel auch Icons enthalten JTextfield: - Ein einzeiliges Eingabefeld für Textdaten - Zur Eingabe von Passwörtern eignet sich die aus JTextfield abgeleitete Klasse JPasswordfield

Swing: Grundlagen Tooltips und Umrandungen: - Tooltips werden mit der Methode settooltiptext realisiert - Hilfestellung für den Benutzer bei der Nutzung des Programms - Werden angezeigt beim Überfahren der Dialogelemente mit der Maus - Mit der Methode setborder und der Klasse Border realisiert - Diese wird mit der create-methode oder der Klasse Border erzeugt - Im Beispielprogramm werden die beiden Panels eingerahmt JButton: - Dient zur Darstellung von Schaltflächen - Erbt die meisten Eigenschaften aus der Vaterklasse AbstractButton - Diese vererbt ihr Eigenschaften auch an Menüeinträge - Grundlagen der Bedienung ähneln denen der Klasse Button

Swing: Grundlagen JList und JScrollPane: - JList ist eine Liste von Werten, in der mehrere ausgewählt werden können (Ähnelt der List aus AWT, aber mehr Funktionen ) - Mit Hilfe von Listenmodels (Instanz der Klasse ListModell) sehr komplexe und dynamische Datenstrukturen repräsentiert werden - Auch Grafiken und Objekte können angezeigt werden - Keine automatische Scrollbar - Für Scrollbar wird die Liste in JScrollPane eingebettet - Kümmert sich um alle Details des Scrollens und der Daten

Swing: Grundlagen Umschalten von Look-And-Feel - Durch Aufruf der Methode setlookandfeel schaltet der UI-Manager das Look-And-Feel um - Anschließend mit updatecomponenttreeui der Klasse SwingUtilities neue Darstellung des Dialogs - Am Besten mit einer Exception mögliche Fehler abfragen

Swing: Container und Menüs - Hauptfenster - Menüs

Hauptfenster: JFrame: - Wichtigstes Hauptfenster - Stellt Hauptfenster mit Rahmen, Systemmenü und Standartschaltflächen zur Verfügung - Da JFrame aus Frame abgeleitet ist, stehen alle Methoden aus Window, Container und Component zur Verfügung Kleines Beispiel: Hauptfenster JFrame

RootPane, LayeredPane, ContentPane (1): - Bedeutender Unterschied in der Struktur der Komponenten zwischen AWT und Swing - Daraus resultiert unterschiedliche Bedienung - In AWT werden Komponenten direkt auf dem Fenster platziert - In Swing-Hauptfenster nimmt eine Komponente alle anderen Komponenten auf - Die Hauptkomponente nennt sich RootPane und ist eine Art Verwaltungsinstanz - RootPane ist vom Typ JRootPane

RootPane, LayeredPane, ContentPane (2): RootPane hat folgende Komponenten: - eine aus Container abgeleitete GlassPane - eine aus JLayeredPane abgeleitete LayeredPane LayeredPane enthält zwei weitere Unterkomponenten: - eine aus Container abgeleitete ContentPane - eine aus JMenuBar abgeleitete Menüleiste

RootPane, LayeredPane, ContentPane (3): - GlassPane und LayeredPane liegen übereinander - GlassPane ist meist durchsichtig und wird meist nicht zur Grafikausgabe genutzt (nur, wenn das ganze Fenster betroffen ist) - LayeredPane enthält Menü- und Dialogelemente und kann sie nebeneinander und übereinander anordnen (Menü's) - RootPane wird mit GlassPane, LayeredPane und ContentPane automatisch beim Anlegen erzeugt - Mit getcontentpane werden die Koponenten platziert - Mit Getter- und Settermethoden ist der strukturelle Aufbau veränderbar Kleines Beispiel: Dialogelementen platzieren

JWindow: - 2. Hauptfensterklasse, aus Window abgeleitet - Dient dazu, ein rahmenloses Fenster an beliebiger Stelle und Größe auf dem Bildschirm zu platzieren - Besitzt auch eine RootPane wie JFrame mit den gleichen Strukturen Kleines Beispiel: Splashscreen

JDialog: - Dialogfenster werden meist nur kurz aufgerufen - Kurze Kommunikation zwischen Anwender und Programm - Keine Menüs, eingeschränkte Funktion - Größe meist nicht veränderbar - Als modales Fenster wird während des Ausführens das restliche Programm angehalten - Auch hier: Hinzufügen und Anordnen von Komponenten auf der ContentPane - Bei einem modalen Dialog wird der Aufruf von show (setvisible(true)) erst beendet, wenn der Dialog geschlossen wird - Bei nicht modalen Fenstern geht es gleich nach show weiter

JOptionPane: - Weitere Möglichkeit Swingdialoge zu erzeugen mit der Klasse JOptionPane - Für einfache Dialoge mit Icon und Text, Eingabefeld, Button's Yes, No, Cancel - Zum Erzeugen einer statischen Methode - Einfache Abfragen können realisiert werden - Einfache Rückgabe Beispiel: Abfragefenster

JApplet: - Dient zur Entwicklung von Applets, die Swing-Dialogelemente zur Gestalltung der Oberfläche nutzen - Auch hier die RootPane-Struktur Beispiel: Applet

JInternalFrame: - Erzeugung von Haupt- und Unterfenstern - Multiple Document Interface (MDI) weit verbreitet, z.b. Textverarbeitung, Grafikprogramme, Entwicklungsumgebung - In AWT nicht möglich - In Swing zwei Komponenten nötig: - Hauptfenster Desktop - Unterfenster Kindfenster Hauptfenster: - Jede Hauptfensterklasse geeignet, JFrame bevorzugt - Für Kindfensterverwaltung wird die Klasse JDesktopPane verwendet - Sie besitzt einen DesktopManager zur Verwaltung der Kindfenster für Verschieben, Verkleinern, Vergrößern, usw.

Kindfenster: - Sind aus JInternalFrame abgeleitet, täuscht Hauptfenster vor - Ist direkt aus aus JComponent abgeleitet und nicht aus JFrame - Da MDI-Kindfenster nicht auf allen grafischen Oberflächen zur Verfügung stehen, wurde es so gemacht - Zum Aktivieren mit setvisible sichtbar machen und mit add platzieren Konsequenz: - Übliche Ausstattung muss nachgebildet werden (Rahmen, Titelleiste, Buttons, verschieben usw.) - Programmierschnittstelle von Frame muss nachgebildet werden Beispiel: Desktop und Kindfenster

Menüs JMenuBar: - Alle Fenster außer JWindow können Menüleiste haben - Wird dem Hauptfenster durch add JMenuBar zugefügt - Starke Ähnlichkeit zu AWT JMenu: - Mit add werden neue Menüeinträge hinzugefügt

JMenuItem: - JMenuItem repräsentiert Menüeinträge, also Elemente, die sich in einem Menü befinden - Es handelt sich dabei um Texte, die mit Icons oder Häkchen versehen werden können - Da JMenu aus JMenuItem abgeleitet ist, kann man so Menüeinträge schachteln Beispiel: Hauptmenü

Untermenüs: - Da Menu aus MenuItem abgeleitet ist, kann an die Methode add der Klasse Menu auch eine Instanz der Klasse übergeben werden - Kleiner Pfeil zeigt an, dass es ein Untermenü gibt Icons in Menüeinträgen: - Ein Icon-Objekt kann direkt an den Konstruktor von MenuItem übergeben werden - Auch über seticon möglich - Icon kann einfach durch ImageIcon aus gif- oder jpeg-dateien erzeugt werden Beispiel Menüs

Swing Quellenangabe: - Handbuch der Javaprogrammierung - Skript

Ende Vielen Dank für Ihre Aufmerksamkeit And let's Swing!