Softwaretechnik Programmieren von GUIs mit Swing
|
|
- Gesche Färber
- vor 5 Jahren
- Abrufe
Transkript
1 Softwaretechnik Programmieren von GUIs mit Swing Fachhochschule Wiesbaden, FB Informatik Studiengang Medieninformatik Vorlesung im WS 2002/ Literatur H.M. Deitel, P.J. Deitel Java How to Program, Introducing Object-Oriented Design with the UML and Design Patterns Prentice Hall, 2002, ISBN , 4. Auflage Kapitel 12 und 13 dieses allgemeinen Java-Buches liefern eine gute, knappe Einführung in die Swing-Programmierung ohne auf AWT aufzubauen. Buch ist etwas bunt, aber dennoch empfehlenswert. Großteil dieser Einführung basiert auf diesen Kapiteln John Zukowski Definitive Guide to Swing for Java 2, Second Edition Apress, 2000, ISBN X Sehr gelobtes, umfassendes Buch über Swing-Programmierung. Andere Swing-Bücher Swing-Kapitel in anderen Java-Büchern The JFC Swing Tutorial im Java Tutorial Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 2
2 Softwaretechnik (Medieninformatik): GUIs mit Swing Überblick 1 Einführung 2 Einfache Swing Komponenten 3 Ereignisbehandlung und Adapterklassen 4 Layout Manager 5 Komplexere Swing Komponenten Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 3 Softwaretechnik (Medieninformatik): GUIs mit Swing Überblick: 1.2 Ein erstes Swing-Programm Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 4
3 Erstellen von graphischen Benutzerschnittstellen Graphical User Interface: GUI Völlig andere Programmstruktur Nicht einfach ein Hauptprogramm, das Methoden verschiedener Objekte der Reihe nach aufruft Auch nicht nur ein Menüsystem Programm wird durch Benutzerinteraktion gesteuert Art und Reihenfolge nicht im Detail planbar Ereignisgesteuerte Anwendung Tastatureingabe, Mausklick, Realisiert durch sog. Model-View-Controller Anwendungsarchitektur Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 5 Model-View-Controller (MVC) Anwendungsarchitektur Realisierbar durch Observer Design-Pattern Beobachter beobachtet eine Sache Registriert sich bei der Sache Wird von Änderungen informiert Verschieden Visualisierungen derselben Sache sind möglich Verschiedene Views desselben Modells Soweit auch als Document-View Architektur bekannt Microsoft Foundation Classes (MFC) Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 6
4 MVC Rollen Model: Repräsentiert internen Zustand eines Objektes Speichert diesen Stellt Methoden zum Ändern und Abfragen zur Verfügung View: Stellt Zustand des Modells dar Benutzt dazu die Methoden des Modells Controller: Reagiert auf Interaktion mit der graphischen Oberfläche Aktualisiert den Zustand des Modells Sorgt dafür, dass View aktualisiert wird Ruft ggf. anderen View auf Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 7 MVC Architektur Benutzereingaben Bildschirmausgabe Änderung der Darstellung Controller View Änderungen in der Benutzerschnittstelle Veränderung von Daten Model Zugriff auf Daten zur Visualisiereung Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 8
5 MVC Realität View und Controller sind meistens eng miteinander verbunden Trennung würde Entwurf von visuellen Komponenten komplizieren Hätte höheren Kommunikationsaufwand zwischen View und Controller zur Folge Daher in der Praxis: Model und View sind eine Komponente, d.h. eine Klasse Basisklasse JComponent, delegiert an ComponentUI Swing-Komponente kann aber (im Innern) noch weitere Bestandteile besitzen Ihr eigenes Modell Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 9 Komponenten Beispiele JLabel Konstanter Text oder Graphik, nicht editierbar JTextField Texteingabefeld; kann auch Text nur darstellen JButton Knopf zum Anklicken: Löst ein bestimmtes Ereignis (event) aus JCheckBox Kann selektiert oder nicht selektiert sein JComboBox Drop-down Liste von Einträgen, von denen einer oder mehrere ausgewählt werden können. Doppelklick erzeugt ein Action Ereignis (action event) Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 10
6 Komponenten Beispiele (fortgesetzt) JList Normale Liste von Einträgen, von denen einer oder mehrere ausgewählt werden können. Doppelklick erzeugt ein Action Ereignis (action event) JPanel Ein Container, der Swing-Komponenten aufnehmen kann Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 11 Packages Haupt Swing-Package javax.swing Sog. lightweight components Vollständig in Java geschrieben Frühere Generation von GUI-Komponenten: Abstract Windowing Toolkit (AWT) java.awt Enge Kopplung an graphische Oberfläche der Betriebssystem- Plattform Darstellung abhängig von dieser Sog. heavyweight components Delegieren an zugehörige Komponente des Packages java.awt.peer, um mit Betriebssystem-Plattform zu wechselwirken Swing Komponenten erben trotzdem oft von AWT Komponenten Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 12
7 Vererbungshierarchie java.lang.object Gemeinsame Methoden für alle GUI Komponenten, z.b. paint(), repaint(), update() java.awt.component java.awt.container Funktionalität für Collection von zusammengehörigen Komponenten, z.b. JPanel. Methoden add() und setlayout() javax.swing.jcomponent Basisklasse fast aller Swing Komponenten Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 13 Softwaretechnik (Medieninformatik): GUIs mit Swing Überblick: 1.2 Ein erstes Swing-Programm Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 14
8 1.2 Ein erstes Swing Programm Swing Komponente JLabel // Java core packages import java.awt.*; import java.awt.event.*; // Java extension packages import javax.swing.*; public class LabelTest extends JFrame { private JLabel label1, label2, label3; // set up GUI in constructor Behälter für visuelle public LabelTest() Komponenten des { Frames super( "Testing JLabel" ); // call JFrame constructor // get content pane and set its layout Container container = getcontentpane(); container.setlayout( new FlowLayout() ); Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) Ein erstes Swing Programm Swing Komponente JLabel (fortgesetzt) // JLabel constructor with a string argument label1 = new JLabel( "Label with text" ); label1.settooltiptext( "This is label1" ); container.add( label1 ); settooltiptext() geerbt von JComponent // JLabel constructor with string, Icon and // alignment arguments Icon bug = new ImageIcon( "bug1.gif" ); // oder.png oder.jpg label2 = new JLabel( "Label with text and icon", bug, SwingConstants.LEFT ); label2.settooltiptext( "This is label2" ); container.add( label2 ); Füge zum Behälter hinzu Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 16
9 1.2 Ein erstes Swing Programm Swing Komponente JLabel (fortgesetzt) // JLabel constructor no arguments label3 = new JLabel(); // change JLabel's properties label3.settext("label with icon and text at bottom"); label3.seticon( bug ); label3.sethorizontaltextposition(swingconstants.center); label3.setverticaltextposition(swingconstants.bottom); label3.settooltiptext("this is label3"); container.add( label3 ); setsize( 275, 170 ); setvisible( true ); } Setze Eigenschaften des JFrames Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) Ein erstes Swing Programm Swing Komponente JLabel (fortgesetzt) // execute application public static void main( String args[] ) { LabelTest application = new LabelTest(); } application.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE ); } // end class LabelTest Was passiert beim Schließen des JFrames? Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 18
10 Softwaretechnik (Medieninformatik): GUIs mit Swing Überblick: 1.2 Ein erstes Swing-Programm Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 19 GUIs sind Ereignis getrieben (event driven) Wenn Benutzer mit dem GUI wechselwirkt, werden Ereignisse erzeugt Texteingabe, Mausklick, Das Ereignis wird dem Programm zugestellt Vererbungshierarchie von Events im Package java.awt.event Swing-spezifische Events in javax.swing.event Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 20
11 Vererbungshierarchie von AWT-Events java.lang.object java.util.eventobject java.awt.awtevent Alle diese Events definiert im Package java.awt.event ActionEvent ComponentEvent ItemEvent AdjustmentEvent ContainerEvent InputEvent FocusEvent PaintEvent WindowEvent KeyEvent MouseEvent Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 21 Drei Beteiligte: Event Quelle GUI Komponente, mit der der Benutzer wechselwirkt Hat Liste der registrierten Event Listener, um diese von Ereignis zu informieren Event Listener können sich bei ihr registrieren Event Objekt Kapselt Informationen über das Ereignis u.a. Referenz auf die Event Quelle Event Listener Erhält das Event Objekt von Event Quelle zugestellt Reagiert auf das Ereignis Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 22
12 Aufgaben des Programmierers: Für die GUI Komponente muss ein event listener registriert werden Eine event handling method muss implementiert werden Auch event handler genannt Ein event listener ist ein Objekt einer Klasse, die eine oder mehrere Methoden enthält, die event-listener Interfaces aus den Packages java.awt.event oder javax.swing.event implementieren Viele der Interfaces sind für Swing- und AWT-Komponenten anwendbar Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 23 Vererbungshierarchie von AWT-Listener Interfaces java.util.eventlistener Alle diese Interfaces definiert im Package java.awt.event ActionListener ComponentListener ItemListener AdjustmentListener ContainerListener KeyListener FocusListener TextListener WindowListener MouseListener MouseMotionListener Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 24
13 Event Listener Objekt Hört auf bestimmte Typen von Events, die von Event Quelle erzeugt wurden Event Handler ist eine Methode, die auf das Ereignis hin aufgerufen wird Event Listener Interface spezifiziert eine oder mehrere Event-Handling Methoden Müssen in der Event Listener Klasse implementiert werden Delegation Event Model Verarbeitung des Ereignisses an ein bestimmtes Objekt (den Listener) delegiert Enter Taste in JTextField gedrückt Methode actionperformed des registrierten Listeners wird aufgerufen Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 25 Klassendiagramm JTextField # listenerlist: EventListenerList + addactionlistener(l: ActionListener) + removeactionlistener(l: ActionListener) # fireactionperformed() + getstate() listeners 0..* for all l in listenerlist { l.actionperformed( e: ActionEvent) } ActionListener actionperformed(e: ActionEvent) handlerstate TextFieldHandler handlerstate = e.getsource().getstate() actionperformed(e: ActionEvent) Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 26
14 Quellcode // Java core packages import java.awt.*; import java.awt.event.*; // Java extension packages import javax.swing.*; Referenzen zu 3 Text- Feldern und einem Password-Feld public class TextFieldTest extends JFrame { private JTextField textfield1, textfield2, textfield3; private JPasswordField passwordfield; // set up GUI in Constructor public TextFieldTest() { super( "Testing JTextField and JPasswordField" ); Container container = getcontentpane(); container.setlayout( new FlowLayout() ); Layout für ConentPane Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 27 Quellcode (fortgesetzt) // construct textfield with default sizing textfield1 = new JTextField( 10 ); container.add( textfield1 ); 10 Zeichen breit // construct textfield with default text textfield2 = new JTextField( "Enter text here" ); container.add( textfield2 ); // construct textfield with default text and // 20 visible elements and no event handler for editing textfield3 = new JTextField( "Uneditable text field", 20 ); textfield3.seteditable( false ); container.add( textfield3 ); Inhalt nicht editierbar // construct passwordfield with default text passwordfield = new JPasswordField( "Hidden text" ); container.add( passwordfield ); Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 28
15 Ein ActionListener Quellcode (fortgesetzt) // register event handlers TextFieldHandler handler = new TextFieldHandler(); textfield1.addactionlistener( handler ); textfield2.addactionlistener( handler ); textfield3.addactionlistener( handler ); passwordfield.addactionlistener( handler ); setsize( 325, 100 ); setvisible( true ); } Registriere ActionListener Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 29 Quellcode (fortgesetzt) // execute application public static void main( String args[] ) { TextFieldTest application = new TextFieldTest(); application.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE ); } Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 30
16 Quellcode (fortgesetzt) // private inner class for event handling Ein ActionListener private class TextFieldHandler implements ActionListener { // process text field events public void actionperformed( ActionEvent event ) { String string = ""; Event Handler // user pressed Enter in JTextField textfield1 if ( event.getsource() == textfield1 ) string = "textfield1: " + event.getactioncommand(); // user pressed Enter in JTextField textfield2 else if ( event.getsource() == textfield2 ) string = "textfield2: " + event.getactioncommand(); Liefert Text in dem Feld Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 31 Quellcode (fortgesetzt) // user pressed Enter in JTextField textfield3 else if ( event.getsource() == textfield3 ) string = "textfield3: " + event.getactioncommand(); // user pressed Enter in JTextField passwordfield else if ( event.getsource() == passwordfield ) { JPasswordField pwd = ( JPasswordField ) event.getsource(); string = "passwordfield: " + new String( pwd.getpassword() ); } Liefert Passwort JOptionPane.showMessageDialog( null, string ); } Pop-Up Fenster } // end private inner class TextFieldHandler } // end class TextFieldTest Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 32
17 Das Frame Prof. Dr. Björn Dreher Softwaretechnik (Medieninformatik) 33
Liste Programmieren Java Überblick
Liste Programmieren Java Überblick 1 Was ist Java? 2 Klassen und Objekte 3 Vererbung 4 Schnittstellen 5 Innere Klassen 6 Exceptions 7 Funktionsbibliothek 8 Datenstrukturen und Algorithmen 9 Ein-/Ausgabe
MehrSoftwaretechnik (Medieninformatik): GUIs mit Swing Überblick
Softwaretechnik (Medieninformatik): GUIs mit Swing Überblick 1 Einführung 2 Einfache Swing Komponenten 3 Ereignisbehandlung und Adapterklassen 4 Layout Manager 5 Komplexere Swing Komponenten Prof. Dr.
Mehr11. GUI-Programmierung mit SWING Überblick
11. GUI-Programmierung mit SWING Überblick 11.1 Einführung 11.2 Einfache Swing Komponenten 11.3 Ereignisbehandlung und Adapterklassen 11.4 Zeichnen 11.5 Dialoge 11.6 Layout Manager 11.7 Komplexere Swing
MehrSoftwaretechnik (Medieninformatik): GUIs mit Swing Überblick
Softwaretechnik (Medieninformatik): GUIs mit Swing Überblick 1 Einführung 2 Einfache Swing Komponenten 3 Ereignisbehandlung und Adapterklassen 4 Zeichnen 5 Layout Manager 6 Komplexere Swing Komponenten
Mehr11. GUI-Programmierung mit SWING Überblick
11. GUI-Programmierung mit SWING Überblick 11.1 Einführung 11.2 Einfache Swing Komponenten 11.3 Ereignisbehandlung und Adapterklassen 11.4 Zeichnen 11.5 Dialoge 11.6 Layout Manager 11.7 Komplexere Swing
MehrProgrammieren II. Events (Ereignisse) Heusch 16.6 (2. Bd) Ratz 15. Institut für Angewandte Informatik
Programmieren II Events (Ereignisse) Heusch 16.6 (2. Bd) Ratz 15 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Events in Java Graphische Anwendungen werden über Events gesteuert.
MehrProgrammieren II. Events (Ereignisse) Heusch 16.6 (2. Bd) Ratz 15. Institut für Angewandte Informatik
Programmieren II Events (Ereignisse) Heusch 16.6 (2. Bd) Ratz 15 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Event-Modelle in Java Graphische Anwendungen werden über Events
MehrProgrammieren II. Events (Ereignisse) Heusch 16.6 (2. Bd) Ratz 15. Institut für Angewandte Informatik
Programmieren II Events (Ereignisse) Heusch 16.6 (2. Bd) Ratz 15 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Event-Modelle in Java Graphische Anwendungen werden über Events
MehrSoftwaretechnik (Medieninformatik): GUIs mit Swing Überblick
Softwaretechnik (Medieninformatik): GUIs mit Swing Überblick 1 Einführung 2 Einfache Swing Komponenten 3 Ereignisbehandlung und Adapterklassen 4 Layout Manager 5 Komplexere Swing Komponenten Prof. Dr.
MehrObjektorientierte Software-Entwicklung
Objektorientierte Software-Entwicklung Priv.-Doz. Dr. Rolf Hennicker 08.01.2003 AWT und Swing AWT (Abstract Window Toolkit) und Swing 2 AWT (Abstract Window Toolkit) und Swing AWT und Swing bieten eine
MehrInstitut für Programmierung und Reaktive Systeme. GUIs mit Swing. Markus Reschke
GUIs mit Swing Markus Reschke 28.08.2014 Beispiel: Ein einfaches GUI-Programm Siehe Painter.java Markus Reschke GUIs mit Swing 2 GUI Frameworks in Java AWT war das erste GUI-Framework, welches mit Java
MehrKapitel 8: Grafische Benutzerschnittstellen
Einführung in die Informatik: Programmierung und Softwareentwicklung Wintersemester 2018/19 Kapitel 8: Grafische Benutzerschnittstellen Prof. Dr. David Sabel Lehr- und Forschungseinheit für Theoretische
MehrZiele. Kapitel 8: Grafische Benutzerschnittstellen. AWT und Swing. Ziele (2)
Einführung in die Informatik: Programmierung und Softwareentwicklung Wintersemester 2018/19 Ziele Kapitel 8: Grafische Benutzerschnittstellen Prof. Dr. David Sabel Lehr- und Forschungseinheit für Theoretische
MehrEinführung in die Informatik: Programmierung und Software-Entwicklung, WS 15/16. Kapitel 7. Grafische Benutzeroberflächen 1
Kapitel 7 Grafische Benutzeroberflächen Grafische Benutzeroberflächen 1 Ziele Grafische Benutzeroberflächen (Graphical User Interfaces) als Anwendungsbeispiel für die objektorientierte Programmierung kennenlernen.
Mehr11. GUI-Programmierung mit SWING Überblick
11. GUI-Programmierung mit SWING Überblick 11.1 Einführung 11.2 Einfache Swing Komponenten 11.3 Ereignisbehandlung und Adapterklassen 11.4 Zeichnen 11.5 Dialoge 11.6 Layout Manager 11.7 Komplexere Swing
MehrBeispiel: Eine Choice-Liste...
Beispiel: Eine Choice-Liste...! "#%$&! ; = '( ) )+**,-. /*0 1 2 ) 3 #%$+45* 6 7%$& -* 89 #6 #:/*0 #%$ < /0 # 1< ) 1< >?270 #@ < /0 # 1 2 ) )
MehrEinführung in die Programmierung für NF. Grafische Benutzeroberflächen
Einführung in die Programmierung für NF Grafische Benutzeroberflächen Ziele Grafische Benutzeroberflächen (Graphical User Interfaces) als Anwendungsbeispiel für die objektorienferte Programmierung kennenlernen.
MehrFunktionale und Objekt-Orientierte Programmierkonzepte
Funktionale und Objekt-Orientierte Programmierkonzepte Prof. Marc Fischlin, Wintersemester 15/16 Kapitel 17: GUI, Threads und verschachtelte Klassen 13. Oktober 2010 Dr.Marc Fischlin Kryptosicherheit 1
MehrGUI-Programmierung. Teil I. Unterlagen zum Modul OOP mit Java V by MOU2/BFH-TI. Berner Fachhochschule Technik und Informatik
GUI-Programmierung mit Java Teil I Unterlagen zum Modul OOP mit Java V 3.0 2007 by WBR1/BFH-TI 2011 by MOU2/BFH-TI GUI-Programmierung V3.0 2011 by WBR1&MOU2/BFH-TI Lernziele Die Kursteilnehmer sind in
MehrIst eine Softwarekomponente, die dem Benutzer eines Computers die Interaktion mit der Maschine über grafische Symbole erlaubt
GUI GUI = Graphical User Interface Ist eine Softwarekomponente, die dem Benutzer eines Computers die Interaktion mit der Maschine über grafische Symbole erlaubt Gute Übersicht über alle Funktionalitäten
MehrEinführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 7. Grafische Benutzeroberflächen
1 Kapitel 7 Ziele 2 (Graphical User Interfaces) als Anwendungsbeispiel für die objektorientierte Programmierung kennenlernen Benutzung von Vererbung zur Erstellung individueller GUI-Klassen durch Erweiterung
MehrEAD II Übung 5. Graphische Benutzungsoberfläche mit BlueJ
EAD II Übung 5 Graphische Benutzungsoberfläche mit BlueJ Graphische Benutzungsoberfläche (GUI) Fenster, das weitere Komponenten zur Darstellung und Interaktion enthält spezielle Standardbibliotheken erforderlich,
MehrProgrammieren II. Java im Vergleich zu anderen Sprachen. Einführung: GUI. Einführung: Grafische Benutzeroberflächen. Dr.
Programmieren II Dr. Klaus Höppner Hochschule Darmstadt SS 2008 1 / 22 2 / 22 Einführung: GUI Fast alle Programme besitzen mittlerweile eine grafische Benutzeroberfläche (engl: Graphical User Interface,
MehrInstrumentierung und Dekodierung
116 Copyright 1996-1998 by Axel T. Schreiner. All Rights Reserved. Instrumentierung und Dekodierung Erweiterung der Grafikklassen Das awt-paket erweitert alle Klassen für Grafikobjekte in java.awt, so
MehrGUI Programmierung mit JAVA Swing
GUI Programmierung mit JAVA Swing Komponenten Layout Event Handling Imaging 2001 Thomas Weiler 1 JAVA Swing Bibliothek zur Erstellung grafischer Benutzerschnittstellen in JAVA Bietet Klassen für grafische
MehrWas passiert, wenn Button "Ok?" mit Maus angeklickt?
Ein Beispiel-Frame Was passiert, wenn Button "Ok?" mit Maus angeklickt? gar nichts!!! FH AACHEN UNIVERSITY OF APPLIED SCIENCES OOS Prof. Dr. H. Faßbender Ereignisverarbeitung 27. April 2016 1 Implementierung
MehrSommersemester Implementierung III: GUI und Verhalten (Teil 2)
Sommersemester 2003 Implementierung III: GUI und Verhalten (Teil 2) 26 Aufgabe 5 Implementierung III: GUI und Verhalten (Teil 2) Umfang: 1 Woche Punkte: 50 P. Als Nächstes soll die Implementierung des
MehrInstitut für Informatik
Technische Universität München Institut für Informatik Lehrstuhl für Computer Graphik & Visualisierung WS 2009 Praktikum: Grundlagen der Programmierung Aufgabenblatt 11 Prof. R. Westermann, R. Fraedrich,
Mehr1. Konventionelle Ein-/Ausgabebetonte Programmierung
1. Konventionelle Ein-/Ausgabebetonte Programmierung 1.1 Realisierung grafischer Benutzungsoberflächen Beispiel Java AWT und Swing 1.2 Grundlagen der 2D-Computergrafik Beispiel Java-Grafikprogrammierung,
MehrJavakurs für Fortgeschrittene
Javakurs für Fortgeschrittene Einheit 03: Swing Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda Einführung in GUI-Programmierung Motivation Grundlagen von Swing Praxis: UI für
MehrKapitel 7: Ereignis-basierte Kommunikation
Liste P: Programmieren mit Java WS 2001/2002, Prof. Dr. V. Turau, FH Wiesbaden Kapitel 7: Ereignis-basierte Kommunikation Folie 125 : Grafische Oberflächen Eine grafische Oberfläche besteht aus Komponenten.
MehrHeute. Grafische Benutzeroberflächen (Anonyme) innere Klassen Einfache Simulationen main / ausführbare jar-files IT I - VO 11 1
Heute Grafische Benutzeroberflächen (Anonyme) innere Klassen Einfache Simulationen main / ausführbare jar-files 17.01.2017 IT I - VO 11 1 Organisatorisches Noch zwei UE und eine Wissensüberprüfung Heute
MehrEventhandling. Delegation model Eventhandler model
Eventhandling Dient der Kommunikation der Controlls mit der eigentlichen Anwendung. Prinzipiell gibt es zwei verschiedene Verfahren für das Eventhandling Delegation model Eventhandler model Die Arbeit
MehrEinführung in GUI-Programmierung. javax.swing
Einführung in GUI-Programmierung javax.swing GUI Graphical User Interface ( Grafische Benutzerschnittstelle ) Anschaulichere und leichtere Möglichkeit zur Dateneingabe und Kontrolle von Programmen Stellt
MehrEinführung in GUI-Programmierung. javax.swing
Einführung in GUI-Programmierung javax.swing GUI Graphical User Interface ( Grafische Benutzerschnittstelle ) Anschaulichere und leichtere Möglichkeit zur Dateneingabe und Kontrolle von Programmen Stellt
MehrEinführung: Grafische Benutzeroberflächen. Programmieren II. Dr. Klaus Höppner. Hochschule Darmstadt Sommersemester / 22
Programmieren II Dr. Klaus Höppner Hochschule Darmstadt Sommersemester 2010 1 / 22 Einführung: Grafische Benutzeroberflächen 2 / 22 Einführung: GUI Fast alle Programme besitzen mittlerweile eine grafische
MehrZentrale Objekte zur Programmierung graphischer Benutzeroberflächen (GUI)
1 JAVA für Bauingenieure Alexander Karakas SS 2008 Zentrale Objekte zur Programmierung graphischer Benutzeroberflächen (GUI) 21.05.2008 2 Was ist ein(e) GUI? GUI = Graphical User Interface = Graphische
MehrZiel dieses Kapitels: Einführung in die Grundzüge der Programmierung graphischer Benutzeroberflächen (engl.: "graphical user interface", GUI) in Java
GUI-Programmierung in Java GUI-Programmierung in Java 2002 Prof. Dr. Rainer Manthey Informatik II 1 AWT und Swing Ziel dieses Kapitels: Einführung in die Grundzüge der Programmierung graphischer Benutzeroberflächen
MehrGRAFISCHE BENUTZERSCHNITTSTELLEN
Vorlesung 4.4 GRAFISCHE BENUTZERSCHNITTSTELLEN Dr. Philip Mayer # 1 GUIs Grafische Benutzerschnittstellen (GUIs, Graphical User Interfaces) bieten dem Benutzer Zugriff auf ein Anwendungssystem GUIs sind
MehrNTB Druckdatum: 01.04.13 -
AWT UND SWING AWT = abstract windowing toolkit Bausteine Eigenes Fenster Programmcode steht nicht im Main, sondern in einer separaten Klasse extends JFrame JWindow selbstständiges Fenster, ohne Rahmen
MehrEventhandling. Delegation model Eventhandler model
Eventhandling Dient der Kommunikation der Controlls mit der eigentlichen Anwendung. Prinzipiell gibt es zwei verschiedene Verfahren für das Eventhandling Delegation model Eventhandler model Die Arbeit
MehrEinführung in die Programmierung für NF. Übung
Einführung in die Programmierung für NF Übung 09 18.12.2013 Inhalt Korrektur Blatt 8 Wiederholung Design Patterns Einführung in GUI s mit Java Swing und AWT Einführung in die Programmierung für NF Übung
MehrSeite Architektur interaktiver Systeme. 7. Architektur interaktiver Systeme. 7.1 Entkopplung durch Sichten. Schichtenarchitektur
7. Architektur interaktiver Systeme 7.1 Entkopplung durch Sichten 7.2 Ereignisgesteuerter Programmablauf 7.3 Benutzungsoberflächen 7. Architektur interaktiver Systeme 7.1 Entkopplung durch Sichten 'The
MehrJava I Vorlesung 11 Graphische Oberflächen mit Swing
Java I Vorlesung 11 Graphische Oberflächen mit Swing 5.7.2004 Swing Komponenten Layout-Manager Events Swing und Threads Die Java-Plattform 2 Die Java-Plattform 3 "Hello World" in Swing HelloWorldS.java
MehrUniversität Paderborn Prof. Dr. Stefan Böttcher. Abschluss von Kapitel 2: Programmierung Grafischer Oberflächen mit der Swing-Bibliothek
Abschluss von Kapitel 2: Programmierung Grafischer Oberflächen mit der Swing-Bibliothek 1 Ereignis-orientierte Programmierung Prinzipien Programm besteht aus einer Reihe von Dämonen (=Listener) Dämon (=Listener)
MehrGraphical User Interfaces
Graphical User Interfaces SEP 184 Toolkits es gibt verschiedene Toolkits (= Sammlungen von Klassen, Anbindungen an Betriebssystem, etc.) für grafische Oberflächen Abstract Windows Toolkit (AWT) Swing Standard
MehrProf. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik GUI-Programmierung mit Swing
Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik GUI-Programmierung mit Swing AWT und Swing Java enthält zwei Pakete zur Programmierung graphischer Oberflächen. java.awt: Das Abstract
MehrGrundlagen der Programmierung (GP) Prof. Dr. H. Schlingloff Joachim Hänsel
Grundlagen der Programmierung (GP) Prof. Dr. H. Schlingloff Joachim Hänsel 17. 6. 2010 Kapitel 8: Java-Programmierung 8.1 Ereignisbehandlung, Benutzungsschnittstellen 8.2 Graphikprogrammierung 8.1 Ereignisbehandlung
MehrObjektorientierte Programmierung
Objektorientierte Programmierung Exkurs: Graphische Benutzeroberflächen FH Braunschweig/Wolfenbüttel Sommersemester 2009 1 / 22 Gliederung I Wiederholung Klassen, Objektorientierung (Kapitel 10,11) Exkurs:
MehrAuswahl aus mehreren Alternativen:
907 908 Texteingabe: TextField zeigt eine Text-Zeile, die vom Benutzer modifiziert werden kann. TextArea zeigt mehrere modifizierbare Text-Zeilen. Auswahl aus mehreren Alternativen: List scrollbare Liste
MehrGrafische Benutzeroberflächen
Gilbert Beyer und Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik http://www.pst.ifi.lmu.de/lehre/wise-11-12/infoeinf WS11/12 Aufgabe Ein Benutzer soll zwei Zahlen in ein Programm
MehrSoftwarepraktikum: Enigma
Softwarepraktikum: Enigma Martin Steffen Sommersemester 2003 Abschnitt I GUI Inhalt: Übersicht gui-pakete in Java: AWT, Swing Komponenten und Behälter Layout Ereignisse und Ereignisbehandlung Ereignismodell
MehrProgrammiertechnik GUI Programmierung mit Java Swing
Programmiertechnik GUI Programmierung mit Java Swing Prof. Dr. Oliver Haase Software Engineering und Verteilte Systeme Raum F012 haase@htwg-konstanz.de Tel: 07531/206-720 Oliver Haase Hochschule Konstanz
MehrGrafische Benutzeroberflächen
Dr. Philipp Wendler Zentralübung zur Vorlesung Einführung in die Informatik: Programmierung und Softwareentwicklung WS18/19 https://www.sosy-lab.org/teaching/2018-ws-infoeinf/ Aufgabe Ein Benutzer soll
Mehr5. Java Swing Grundlagen der Programmierung II (Java) Prof. Dr. Bernhard Humm Hochschule Darmstadt University of Applied Sciences Sommersemester 2006
5. Java Swing Grundlagen der Programmierung II (Java) Prof. Dr. Bernhard Humm Hochschule Darmstadt University of Applied Sciences Sommersemester 2006 Übersicht Grundlagen der Programmierung II Einordnung
MehrGUI Programmierung mit javax.swing
java.awt Swing Komponenten Layout Manager Ausblick GUI Programmierung mit University basierend auf Folien von Dr. Beatrice Amrhein (Bern), 19. Juni 2006 java.awt Swing Komponenten Layout Manager Ausblick
MehrJButton, JCheckBox, JRadioButton. Programmieren II. Vorlesung 7. Handout S. 1. Dr. Klaus Höppner. Hochschule Darmstadt Sommersemester 2009.
Programmieren II Dr. Klaus Höppner Hochschule Darmstadt Sommersemester 2009 1 / 30 2 / 30 JButton, JCheckBox, JRadioButton In Swing existieren drei wesentliche Klassen für Schaltflächen: JButton für normale
MehrMedientechnik. Übung 2 Java Swing
Medientechnik Übung 2 Java Swing Planung Nr Zeitraum Thema 1 20.04. 25.04. Bildretusche mit Gimp 2 27.04. 01.05. GUI Programmierung 3 04.05. 08.05. Model-View Controller 4 18.05. 22.05. Bildfilter 5 26.05.
MehrSwing : Komponeneten I (Teil 1) Was ist Swing?
Was ist Swing? 1 Unterschied zu AWT (Abstract window Toolkit) Zusätzliche Komponenten von Swing,die zu Oberflächenerzeugung genutzt werden können: Keyboard Accelerators, also Tastenkombination zur Steuerung
MehrB1. Ein-/Ausgabebetonte Programmierung
B1. Ein-/Ausgabebetonte Programmierung B1.1 Mensch-Maschine-Kommunikation B1.2 Modell-Sicht-Paradigma B1.3 Bausteine für grafische Oberflächen B1.4 Ereignisgesteuerte Programme Ludwig-Maximilians-Universität
MehrJava für Computerlinguisten
Java für Computerlinguisten 5. Grafische Userinterfaces Christian Scheible Institut für Maschinelle Sprachverarbeitung 31. Juli 2009 Christian Scheible Java für Computerlinguisten 31. Juli 2009 1 / 33
MehrJ.1. J.1 GUI-Programmierung in in Java. 2002 Prof. Dr. Rainer Manthey Informatik II 1
GUI-Programmierung in Java GUI-Programmierung in in Java 2002 Prof Dr Rainer Manthey Informatik II 1 AWT und Swing Ziel dieses Kapitels: : Einführung in die Grundzüge der Programmierung graphischer Benutzeroberflächen
MehrHo Ngoc Duc IFIS - Universität zu Lübeck
Ho Ngoc Duc IFIS - Universität zu Lübeck 30.04.2003 SWING ist die Java Klassenbibliothek zur Entwicklung grafischer Oberflächen. Im Gegensatz zum AWT (Abstract Windowing Toolkit) nutzt SWING leichtgewichtete
MehrModel-View-Controller. Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 1
Model-View-Controller Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 1 Model View Controller (MVC) Architekturmuster für die Gestaltung von interaktiven Oberflächen 3 Komponenten Model: Datenmodell
MehrEinführung in Swing. Graphical User Interface
Einführung in Swing Ho Ngoc Duc IFIS - Universität zu Lübeck Graphical User Interface Ein GUI-Programm beinhaltet: Graphische Darstellung der Anwendungsdaten und Interaktionsmöglichkeiten in Fenstern Steuerung
MehrGrafische Benutzeroberflächen
Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative student"
Mehr7. Architektur interaktiver Systeme
7. Architektur interaktiver Systeme 7.1 Entkopplung durch Sichten 7.2 Ereignisgesteuerter Programmablauf 7.3 Benutzungsoberflächen 7. Architektur interaktiver Systeme 7.2 Ereignisgesteuerter Programmablauf
MehrGraphische Benutzungsoberflächen mit Java. Einführung in NetBeans
Graphische Benutzungsoberflächen mit Java Einführung in NetBeans Graphische Benutzungsoberflächen! Interaktion mit dem Programm! Datenein- und ausgabe! Rückmeldungen über Verarbeitung der Daten! Visualisierung
MehrDesign Patterns I. Observer, Listener & MVC
Design Patterns I Observer, Listener & MVC Design Patterns I - Gliederung - Was sind Design Patterns? - Definition von Design Patterns - Entstehung - Nutzen & Verwendung - MVC - Model, View, Controller
MehrJLabel. dient zur Textanzeige. können auch Bilder anzeigen: mylabel.seticon( new ImageIcon( C:/Pfad/zum/Bild.jpg )
Swing Komponenten Thomas Wieczorek http://www.wieczo.net/?p=76 Hier trage ich die Komponenten zusammen, die Kreling und Wiedling in ihren Klausuren oft verwendet haben. Bei Verbesserung: Bitte Kommentar
MehrJAVA Oberflächen mit Swing
JAVA Oberflächen mit Swing Grafik von http://javafx.com 159 AGENDA Grundlagen GUI Swing JavaFX 160 GRAPHISCHE BENUTZEROBERFLÄCHEN (1) AWT = Abstract Window Toolkit Verwendet die jeweiligen GUI-Komponenten
MehrWiederholung: Objektorientierte Oberflächen-Programmierung mit Java und Swing
Wiederholung: Objektorientierte Oberflächen-Programmierung mit Java und Swing Heinrich Hußmann Ludwig-Maximilians-Universität München Sommersemester 2003 Ludwig-Maximilians-Universität München Prof. Hußmann
MehrGrundlagen der Programmierung APPLETS
Grundlagen der Programmierung APPLETS Inhalt dieser Einheit Java-Applets: Java-Applets Vor- und Nachteile Sicherheitskonzepte Methoden Einbetten in HTML Graphical User Interface 2 Java Applets Applets
MehrFachhochschule Stuttgart Prof. Uwe Schulz 14. Juli 2005 Hochschule der Medien Klausur Informatik, EDV-Nr (42021) Seite 1 von 4
Hochschule der Medien Klausur Informatik, EDV-Nr. 40301(42021) Seite 1 von 4 Name: Matr. Nr.: Note Teil 1: Keine Hilfsmittel! Bearbeitungszeit: 20 Minuten Frage Stichwort 1 Schleife 2 2 Code-Fragment mit
MehrSwing. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java
Swing Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 27.06.07 G. Bohlender (IANM UNI Karlsruhe) Swing 27.06.07 1 / 10 Übersicht 1 Einführendes
MehrAufbau einer typischen Java-Datei
Aufbau einer typischen Java-Datei 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 [package mein.paket;] [import
Mehr7. Architektur interaktiver Systeme
7. Architektur interaktiver Systeme 7.1 Entkopplung durch Sichten 7.2 Ereignisgesteuerter Programmablauf 7.3 Benutzungsoberflächen (Fortsetzung) Layout-Manager Definition Ein Layout-Manager ist ein Objekt,
MehrJAVA Oberflächen mit Swing
JAVA Oberflächen mit Swing Grafik von http://javafx.com 168 168 AGENDA Grundlagen GUI Swing JavaFX 169 169 GRAPHISCHE BENUTZEROBERFLÄCHEN (1) AWT = Abstract Window Toolkit Verwendet die jeweiligen GUI-Komponenten
MehrRückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum
Programmieren I Martin Schultheiß Hochschule Darmstadt Sommersemester 2012 1 / 19 Rückblick Themen Erste GUI-Anwendung Praktikum 2 / 19 Inhalt von Teil 1 Algorithmen Elementare Datentypen Operatoren Bedingte
MehrProjekt objektorientiertes programmieren in Java SS08. Event-Handling. Nils Heinrich
Projekt objektorientiertes programmieren in Java SS08 Event-Handling Nils Heinrich 18.05.2008 Event-Handling Delegation Event Model / Delegation Based Event-Handling Ereignistypen Ereignisklassen Event
MehrJava GUI Entwicklung mit Swing
Seminarunterlage Version: 5.03 Version 5.03 vom 13. Februar 2014 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen sind Warenzeichen
MehrProgrammieren 2 Selbststudium Semesterwoche 4
Programmieren 2 Selbststudium Semesterwoche 4 Kapitel 11.1, 11.2 und 11.3 1. Das Konzept "Interface" ist wichtig und ist uns schon mehrfach begegnet. In welchen Zusammenhängen hatten wir es schon mit "Interfaces"
Mehr14. Applets. Java-Beispiel: TempApplet.java. K. Bothe, Inst. f. Informatik, HU Berlin, PI1, WS 2006/07
14. Applets Java-Beispiel: TempApplet.java K. Bothe, Inst. f. Informatik, HU Berlin, PI1, WS 2006/07 Version: 2. Feb. 2007 2 Schwerpunkte Kommandozeilengesteuerte oder graphische Nutzeroberfläche Anwendungen
Mehrimport java.awt.*; import java.awt.event.*; import javax.swing.*;
Swing Workshop Dieser Workshop enthält grundsätzliche Informationen über Swing und Java und regt mit einigen Beispielen und Übungen zum weiteren Erkunden dieses Themengebietes an. Kapitel 1: Das erste
MehrSwing Lernen am Code Teil 1
Swing Lernen am Code Teil 1 Swing Fenster erzeugen import java.awt.* import java.awt.event.* import javax.swing.* class SwingDemo{ static JFrame Fenster; public static void main(string[] args){ } } Fenster
MehrRückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum
Programmieren I Martin Schultheiß Hochschule Darmstadt Sommersemester 2011 1 / 20 Rückblick Themen Erste GUI-Anwendung Praktikum 2 / 20 Inhalt von Teil 1 Algorithmen Elementare Datentypen Operatoren Bedingte
MehrEinführung in die Programmierung Blockkurs Java
Michael Bader 8. 12. April 2002 Mittwoch Inhaltsübersicht Eigene Klassen definieren Vererbung Abstrakte Klassen Schnittstellen Polymorphismus Designbeispiele: Java-AWT Strings in Java Funktionen und Funktionsplotter
Mehr...erinnern Sie sich? oopjs4b / kwhbkd4r
...erinnern Sie sich? oopjs4b / kwhbkd4r !" Ereignisbehandlung in awt/swing führt Liste interessierter Behandler GUI- Komponente (z.b. Knopf) wird eingetragen trägt ein Ereigniskanal fertigt ab neuer Behandler
MehrGUIs in Java und ihre Programmierung
GUIs in Java und ihre Programmierung Einführung GUI = Graphical User Interface graphische Benutzerschnittstelle Java Tutorial java.sun.com/docs/books/tutorial/index.html Java Documentation (in Version
MehrKap. 35 Swing: Grundlagen Kap. 36.1 Swing: Hauptfenster
Kap. 35 Swing: Grundlagen Kap. 36.1 Swing: Hauptfenster by Ali Bastan Gliederung Grundlagen von Swing 1. Kurze Einleitung 2. Warum Swing, wenn es das AWT gibt? 3. Was ist Swing? 4. Merkmale von Swing 5.
MehrBenutzeroberflächen. Abstract Windowing Toolkit, Rahmen, Wächter, Ereignisbehandlung, Ausgabe, Menüs.
Benutzeroberflächen Abstract Windowing Toolkit, Rahmen, Wächter, Ereignisbehandlung, graphische Ausgabe, Menüs. Der Abstract Windowing Toolkit (awt) Jedes moderne Betriebssystem stellt bereit Fenster Menüs
MehrMedientechnik. Übung 3 MVC & Observer
Medientechnik Übung 3 MVC & Observer Planung Nr Zeitraum Thema 1 20.04. 25.04. Bildretusche mit Gimp 2 27.04. 01.05. GUI Programmierung 3 04.05. 08.05. Model-View Controller 4 18.05. 22.05. Bildfilter
MehrEreignisverwaltung und Layout-Typen
Ereignisverwaltung und Layout-Typen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 13.06.07 G. Bohlender (IANM UNI Karlsruhe) Ereignisverwaltung
MehrHochschule der Medien Prof. Uwe Schulz 13. Juli 2009 Klausur Informatik, EDV-Nr Seite 1 von 6. Teil 2: Aufgaben
Hochschule der Medien Prof Uwe Schulz 13 Juli 2009 Klausur Informatik, EDV-Nr 40301 Seite 1 von 6 Name: Matr Nr: Teil 2: Aufgaben Hilfsmittel: Bearbeitungszeit: alle außer tragbare Computer und Nachbar
Mehr