> GUI Programmierung in Java Teil 2

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "> GUI Programmierung in Java Teil 2"

Transkript

1 > GUI Programmierung in Teil 2 Mark Egloff

2 Lernziel Heute Abend > Sie lernen eine 2. Library für die GUI Erstellung kennen > Sie kennen die Begriffe JFC, SWING und MVC und können diese auch erklären > Sie erstellen eigene Oberflächen Mark Egloff

3 > Let s Mark Egloff

4 Was ist? > steht zum einen für ein rhythmisch-dynamisches Phänomen und eines der Grundelemente des Jazz. Durch die minimale Verschiebung der Betonungen innerhalb des Taktes vom Puls (den vier Taktschlägen oder Beats) weg entsteht ein "federnder", als "-Feeling" bezeichneter Rhythmuseindruck, der für die Musikrichtung des Jazz charakteristisch ist. (siehe (Rhythmus)) > Bei handelt es sich um eine API zum Programmieren von grafischen Benutzeroberflächen. Seit -Version 1.2 (1998) ist es Bestandteil der -Runtime. gehört zu den Foundation Classes (JFC). baut auf dem älteren AWT auf und ist mit den anderen APIs verwoben. Mark Egloff

5 Warum wenn es AWT gibt? > Obwohl das Abstract Window Toolkit das Problem einer einheitlichen Benutzeroberfläche lösen sollte, ist dies bei Sun nicht ganz gelungen. Das AWT war von Anfang an zusammengepfuscht. > Das AWT wurde damals in ca. 6 Wochen erstellt und dann als Folge nachträglich umgebaut. Von AWT 1.0 auf AWT 1.1 fanden erhebliche Einbüssungen in der Rückwärts-Kompatibilität statt. > SUN hatte das AWT einfach gehaltenund nur auf die wesentlichsten GUI Elemente beschränkt. Dies gefiel den GUI Entwicklern gar nicht. > Darauf hin konzipierte Netscape kurzerhand die Internet Foundation Classes (IFC), die das AWT in wesentlichen Punkten ergänzten. Auch Microsoft mischt in Form von Erweiterungen mit. Microsoft bot die Application Foundation Class (AFC) an. Mark Egloff

6 Warum wenn es AWT gibt? > Im April des Jahres 1997 haben sich Sun, Netscape und IBM auf eine GUI- Bibliothek geeinigt, die auf Netscapes IFC aufbaut und das AWT in der -Version 1.2 erweitert. Der Name des Toolkits wude JFC ( Foundation Classes) genannt. > Als 1997 in San Francisco auf der One die neuen JFC-Komponenten vorgestellt wurden, entschied sich Georges Saab, ein Mitglied des JFC- Teams, für Musik parallel zur Präsentation, und zwar -Musik, weil der Entwickler glaubte, dass sie wieder in Mode käme. Dementsprechend wurden die neuen grafischen Elemente in einem Paket namens abgelegt. Obwohl der Name offiziell dem Kürzel JFC weichen musste, war er doch so populär, dass er bestehen blieb. Mark Egloff

7 Foundation Classes > Die JFC besteht im Wesentlichen aus: > -GUI-Komponenten > Pluggable Look&Feel > Accessibility > 2D-API > Drag&Drop AWT 2D Drag&Drop Look & Feel Accessibility JFC (ab 1.2) > Das AWT wird heute als Subgruppe von JFC angesehen. Mark Egloff

8 Unterschiede zu AWT? Das Heavyweight Peer-Prinzip bei AWT > Die ursprüngliche AWT-Implementierung benötigt so genannte Peer- Klassen, die als native Funktionen auf der speziellen Benutzeroberfläche implementiert sind. Eine Schaltfläche unter AWT kennt dann einen Partner auf der Betriebssystemseite, der die Visualisierung vornimmt. JVM Button Betriebssystem Heavy Mark Egloff

9 Unterschiede zu AWT? > Die Lösung der AWT Peer Variante hat seine Vor und Nachteile + Der Vorteil besteht darin, dass durch die nativen Peer-Klassen die Oberfläche schnell wird und der Speicherverbrauch sich im Rahmen hält. - Leider zeigen die Programme unter den verschiedenen Betriebssystemen bisweilen merkwürdige Seiteneffekte. So kann ein Textfeld unter Windows weniger als 64K Zeichen aufnehmen, bei anderen Oberflächen ist dies egal. - Da das AWT auch nur Komponenten anbietet, die auf jeder Plattform verfügbar sind, ist das Angebot an Widgets sehr beschränkt. Moderne grafische Elemente, sei es auch nur ein Icon auf einer Schaltfläche, sind vom AWT nicht vorgesehen. Mark Egloff

10 Unterschiede zu AWT? Das Lightweight Peer-Prinzip bei > verwendet für seine GUI Elemente keine Peer Klasse. benützt lediglich ein Peer für das Grundfenster. Alle anderen Elemente werden dann mittels Zeichenoperationen auf die Oberfläche aufgemalt. JVM JFrame JButton Betriebssystem win MAC Mark Egloff

11 Unterschiede zu AWT? Das Lightweight Peer-Prinzip bei > Auch diese Lösung hat natürlich seine Vor- und Nachteile: + Diese Lösung ist vollständig in und somit plattformunabhängiger + Eine Leichtgewicht-Komponente kann durchsichtig sein und muss nicht mehr in einen rechteckigen Bereich passen. Da alle Komponenten nun gemalt werden, lässt sich alles ohne Rücksicht auf das unterliegende grafische System zeichnen - Leider aber auch langsamer. Alle Komponenten werden mit primitiven Zeichenoperationen gemalt, so etwa eine Schaltfläche aus einem Rechteck mit Schatten und einem Text in der Mitte. Mark Egloff

12 Unterschiede zu AWT? Das Lightweight Peer-Prinzip bei > Andere Unterscheide bzw. Gemeinsamkeiten bei zu AWT sind > bietet eine sehr umfangreiche Auswahl an GUI Elementen an welche es in AWT nicht gibt z.b. Trees, Tabellen, Bars, Regler etc. Dazu kommen noch fertige Dialoge wie FileChooser, ColorChoser, Message-Dialoge etc. > verwendet für die Eventbehandlung das genau gleiche Prinzip und somit die genau gleichen Klassen wie das AWT > Im Vergleich zu AWT hat man mit folgende zusätzliche Möglichkeiten, Tastenkombinationen zur Steuerung von Komponenten, Drag & Drop, Setzen des Look and Feels, Tooltips, automatisches Double Buffering, andere Layout-Manager/Panels Mark Egloff

13 Unterschiede zu AWT? Die ungesunde Mischung & AWT gleichzeitig > Zwar können und AWT gleichzeitig in einer Appliaktion genutzt werden. Jedoch kann es zu so genannten Clipping Problemen kommen Heavyweight Komponenten sind direkt mit dem Betriebsystem verknüpft und können nicht mit kombiniert werden. Operationen bzw. Flächen werden von AWT Komponenten ignoriert z.b. Clipping Probleme Mark Egloff

14 Set Demo C:\jdk1.5.0_06\demo\jfc\Set2\Set2.html Mark Egloff

15 Aufbau der Library > Die -API besteht in aus ca.20 Packages. Alle Packages sind in einer Hierarchie namens javax.xxxx untergebracht. > ist in 1.2 in folgende Pakete eingeteilt. > javax.accessibility enthält Klassen um -Anwendungen auch auf anderen Geräten und anderen Ein- und Ausgabemedien verfügbar zu machen. > javax.swing ist eigentlich das wichtigste Paket und enthält alle Klassen, um grafische Benutzerelemente zu erstellen. > javax.swing.border bietet Klassen an, mit denen spezielle Rahmen um grafische Benutzerelemente gezeichnet werden können. > javax.swing.colorchooser wird benötigt, wenn Sie die Klasse javax.swing.jcolorchooser einsetzen wollen, um dem Anwender ein Schaltelement zu präsentieren, das die Auswahl einer Farbe ermöglicht. Mark Egloff

16 Aufbau der Library > ist in 1.2 in folgende Pakete eingeteilt (Fortsetzung ) > javax.swing.event dieses Paket stellt genaugenommen lediglich eine Erweiterung der Klassen aus java.awt.event dar, da auch die Interfaces und Klassen aus jenem Paket für -Elemente verwendet werden. > javax.swing.filechooser enthält Klassen, die vom Steuerelement javax.swing.jfilechooser benötigt werden. > javax.swing.plaf bietet eine Auswahl verschiedener Klassen an, über die jeweils das Look-and-Feel einer -Anwendung gezielt eingestellt werden kann. > javax.swing.plaf.basic enthält Klassen, um grundlegende Funktionen für ein Look-and-Feel zu unterstützen. > javax.swing.plaf.metal ist verantwortlich für das Standard-Look-and- Feel von. javax.swing.plaf.multi bietet die Möglichkeit, verschiedenartige Look-and-Feels zu kombinieren. Mark Egloff

17 Aufbau der Library > ist in 1.2 in folgende Pakete eingeteilt (Fortsetzung ) > javax.swing.table wird nur dann benötigt, wenn Sie das Steuerelement javax.swing.jtable verwenden wollen, um eine Tabelle anzuzeigen. > javax.swing.text enthält Code zur Unterstützung von Text- Eingabefeldern. > javax.swing.text.html enthält Code zur Unterstützung spezieller HTML- Eingabefelder. > javax.swing.tree benötigen Sie nur dann, wenn Sie das Steuerelement javax.swing.jtree einsetzen möchten, um eine hierarchische Aufzählung anzuzeigen. > javax.swing.undo enthält Code, um Undo- und Redo-Funktionen in - Anwendungen einfach zu entwickeln. > Seit der Version gibt es zwei weitere Packages namens javax.swing.html.parser und javax.swing.text.rtf. Mark Egloff

18 Aufbau der Library Von AWT zu > Eine Umstellung von AWT auf ist für den Programmierer einfach gehalten. Für jede AWT Klasse gibt es eine entsprechende Klasse > Alle Klassen beginnen mit einem Jxxxx und somit lassen sich die entsprechenden Klassennamen von AWT zu einfach herleiten z.b. > java.awt.frame javax.swing.jframe > java.awt.panel javax.swing.jpanel > java.awt.button javax.swing.jbutton > java.awt.label javax.swing.jlabel > java.awt.textfield javax.swing.jtextfield > java.awt.textarea javax.swing.jtextarea > Mark Egloff

19 Aufbau der Library AWT Beispiel: Body Mass Index AWT Applikation Applikation Mark Egloff

20 Aufbau der Library AWT Beispiel: Body Mass Index (1/2) AWT Applikation class BMIAWTFrame extends Frame implements ActionListener { Label labelresult; TextField textsize, textweight; public BMIAWTFrame() { settitle("bmi - AWT Frame"); setsize(400, 120); setlayout(new GridLayout(3, 2)); add(new Label("Körpergröße cm:")); textsize = new TextField(); add(textsize);... Applikation class BMIFrame extends JFrame implements ActionListener { JLabel labelresult; JTextField textsize, textweight; public BMIFrame () { settitle("bmi - Frame"); setsize(400, 120); setlayout(new GridLayout(3, 2)); add(new JLabel("Körpergröße cm:")); textsize = new JTextField(); add(textsize);... Mark Egloff

21 Aufbau der Library AWT Beispiel: Body Mass Index (2/2) AWT Applikation... add(new Label("Gewicht in kg:")); textweight = new TextField(); add(textweight); labelresult = new Label(); add(labelresult); Button ok = new Button("OK"); ok.addactionlistener(this); add(ok); setvisible(true); } public void actionperformed( ){ } } Applikation... add(new JLabel("Gewicht in kg:")); textweight = new JTextField(); add(textweight); labelresult = new JLabel(); add(labelresult); Button ok = new JButton("OK"); ok.addactionlistener(this); add(ok); setvisible(true); } public void actionperformed( ){ } } Mark Egloff

22 Aufbau der - Library Grundlegendes Klassendiagramm Mark Egloff

23 Die Basisklasse javax.swing.jcomponent > Die Klasse java.awt.component bildet die Basisklasse der Objekte, die als grafische AWT-Komponenten auf den Schirm kommen. > Diese wird nun für -Komponenten noch einmal zu javax.swing.jcomponent erweitert und bildet die Basisklasse für sämtliche Interaktions Elemente. > Allerdings leitet JComponent nicht direkt von Component ab, sondern erst von java.awt.container (und Container dann direkt von Component). Dies hat zur Konsequenz, dass jede JComponent automatisch auch ein Container ist. Component Container JComponent AWT Button JButton Mark Egloff

24 Aufbau der - Library Grundlegende Container Klassen bei > Bei wurden die Haupt-Cotainer Klassen nicht gross geändert, so existieren die entsprechende Klassen JFrame, JWindow und JDialog. Mark Egloff

25 Aufbau der - Library Die neuen LayoutManager bei (1/2) > Bei den LayoutManagern gab es einige Neuerungen. So kamen Manager speziell für das Verwalten der Scrollbereiche sowie 2 neue für die grafische Unterteilungen hinzu Mark Egloff

26 Aufbau der - Library Die neuen LayoutManager bei (2/2) Beispiel BoxLayout z.b. GridLayout gleichmässige Gittereinteilung setlayout(new GridLayout(1,3)); add(new JLabel("Left")); add(new JTextField("Middle")); add(new JButton("Right")); setsize(150, 220); setvisible(true); z.b. BoxLayout angepasste Gittereinteilung setlayout( new BoxLayout( getcontentpane(), BoxLayout.X_AXIS)); add(new JLabel("Left")); add(new JTextField("Middle")); add(new JButton("Right")); setsize(150, 220); setvisible(true); Mark Egloff

27 Aufbau einer - Komponente Das MVC Konzept > Bei wurde nebst des Lightweigth Konzeptes eine weitere bedeutungsvolle Eigenschaft geschaffen. Jede Komponente baut auf einem vereinfachtem MVC Konzept auf. > MVC steht für Model View Controller. MVC ist ein Architekturmuster zur Aufteilung von Softwaresystemen in das drei Einheiten Datenmodell (engl. Model), Präsentation (engl. View) und Programmsteuerung (engl. Controller). > Das MVC Pattern baut auf dem Observer Designpattern auf und benutzt daher dieselben Konzepte der Registrierung und Benachrichtigung > Controller Verwaltet Subjekt und Beobachter > Model Subjekt (Observable) > View Beobachter (Observer) Mark Egloff

28 Aufbau einer - Komponente Das MVC Konzept View update() Controller action() 1. Model change() register() notify() Klassendiagramm Kollaborationsdiagramm Mark Egloff

29 Aufbau einer - Komponente Das MVC Konzept > Bei wurde das MVC vereinfacht. Hierbei wurde der Controller und die View zu einem Teil UI-Delegate zusammengefasst. Mit anderen Worten eine Komponente besteht aus dem Model und dem Delegator der die Daten verwaltet. Mark Egloff

30 Aufbau einer - Komponente Das MVC Konzept > Dieses Model/Delegate Konzept wird bei folgenden Elementen angewandt: Model ListModel ComboBoxModel ButtonModel Document BoundedRangeModel SingleSelectionModel TableModel TableColumnModel TreeModel TreeSelectionModel Klasse, die dieses Model nutzt JList JComboBox JButton, JToggleButton, JCheckBox, JRadioButton, JMenu, JMenuItem, JCheckBoxMenuItem, JRadioButtonMenuItem JTextField, JPasswordField, JTextArea, JEditorPane, JTextPane JProgressBar, JScrollBar, JSlider JMenuBar, JPopupMenu, JTabbedPane JTable JTable JTree JTree Mark Egloff

31 Aufbau einer - Komponente Beispiel Model / UI-Delegate bei javax.swing.jtree > Das Model/UI-Delegate haben wir schon beim Beispiel JTree angewendet (siehe Lektion 10 Baumstrukturen). > Dort werden die Daten zuerst mittels Hilfsklassen in eine Baumstruktur gebracht und dann der eigentliche GUI Komponente zugefügt UI / Delegate: JTree Model: DefaultTreeModel Mark Egloff

32 Aufbau einer - Komponente Beispiel Model / UI-Delegate bei javax.swing.jtree UI / Delegate : JTree setmodel() getmodel() <<Interface>> TreeModel DefaultTreeModel 0..* childs <<Interface>> TreeNode <<Data>> Object DefaultMutable TreeNode Model String Mark Egloff

33 Aufbau einer - Komponente Beispiel Model / UI-Delegate bei javax.swing.jtree Erstellen des TreeModel // Wurzel des Baumes erstellen DefaultMutableTreeNode root = new DefaultMutableTreeNode("The Series"); // Erste Kategorie DefaultMutableTreeNode category = new DefaultMutableTreeNode("Beginner Level"); root.add(category); // Erstes Buch der Kategorie hinzufügen DefaultMutableTreeNode book = new DefaultMutableTreeNode( new Book("The Tutorial...")); category.add(book); // Model erstellen und Baum hinzufügen DefaultTreeModel model = new DefaultTreeModel(root); Mark Egloff

34 Aufbau einer - Komponente Beispiel Model / UI-Delegate bei javax.swing.jtree TreeModel der GUI Komponente zuweisen... // GUI Element erstellen JTree tree = new JTree(); // Modell zuweisen tree.setmodel(model); GUI tree Model model DefaultMutableTreeNode root The Series String DefaultMutableTreeNode category Beginner Level String DefaultMutableTreeNode book The Tutorial Book Mark Egloff

Zentrale Objekte zur Programmierung graphischer Benutzeroberflächen (GUI)

Zentrale 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

Mehr

Kap. 35 Swing: Grundlagen Kap. 36.1 Swing: Hauptfenster

Kap. 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.

Mehr

JAVA Oberflächen mit Swing

JAVA 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

Mehr

Swing :Komponenten I (Teil 2)

Swing :Komponenten I (Teil 2) l Bei Swing handelt es sich um eine Programmierschnittstelle und Grafikbibliothek zum Programmieren von grafischen Benutzeroberflächen l Swing stellt eine Menge von Klassen zur Verfügung l Swing wurde

Mehr

Programmieren II. Java im Vergleich zu anderen Sprachen. Einführung: GUI. Einführung: Grafische Benutzeroberflächen. Dr.

Programmieren 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,

Mehr

Javakurs für Fortgeschrittene

Javakurs 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

Mehr

Objektorientierte Software-Entwicklung

Objektorientierte 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

Mehr

Swing Lernen am Code Teil 1

Swing 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

Mehr

GUI Programmierung mit javax.swing

GUI 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

Mehr

GUI-Programmierung. Teil I. Unterlagen zum Modul OOP mit Java V by MOU2/BFH-TI. Berner Fachhochschule Technik und Informatik

GUI-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

Mehr

Programmieren mit Swing

Programmieren mit Swing Jürgen Schlierf Rudolf Weber Programmieren mit Swing Einfuhrung in die Programmierung mit den Swing-Klassen in Java 2 HANSER Carl Hanser Verlag München Wien Inhaltsverzeichnis 1 Einleitung 1 1.1 Von Java

Mehr

Auszug aus der Klassenstruktur

Auszug aus der Klassenstruktur Swing javax.swing Auszug aus der Klassenstruktur JComponent AbstractButton JColorChooser JComboBox JInternalFrame JLabel JList JPanel JTable JTextComponent JTree JToolBar JToolTip JToggleButton JButton

Mehr

GUI Programmierung mit JAVA Swing

GUI 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

Mehr

JAVA Oberflächen mit Swing

JAVA 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

Mehr

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 7. Grafische Benutzeroberflächen

Einfü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

Mehr

Java I Vorlesung 11 Graphische Oberflächen mit Swing

Java 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

Mehr

Swing : Komponeneten I (Teil 1) Was ist Swing?

Swing : 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

Mehr

Universität VL 13 VL 13 GUI-Programmierung mit Swing Osnabrück Informatik B - Objektorientierte Programmierung in Java Vorlesung 13: GUI 3: Swing

Universität VL 13 VL 13 GUI-Programmierung mit Swing Osnabrück Informatik B - Objektorientierte Programmierung in Java Vorlesung 13: GUI 3: Swing Universität Osnabrück 1 3 - Objektorientierte Programmierung in Java Vorlesung 13: GUI 3: Swing Das AWT gibt dem Entwickler die Möglichkeit, Benutzungsoberflächen zu entwickeln, die auf unterschiedlichen

Mehr

Grafische Benutzeroberflächen mit Swing

Grafische Benutzeroberflächen mit Swing Grafische Benutzeroberflächen mit Swing KW 30, Zentralübung Informatik II 2006-07-24 Klausur: Stichpunkte 1. Auswertung System.out.println("abc" instanceof String); Ergebnis von instanceof ist ein boolean,

Mehr

Einführung in Swing. Graphical User Interface

Einfü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

Mehr

Institut für Programmierung und Reaktive Systeme. GUIs mit Swing. Markus Reschke

Institut 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

Mehr

.* java.awt.* YOU ARE HERE. Graphische Benutzungsoberflächen. GUI-Bibliotheken in Java: JFC. Unterschied AWT - Swing

.* java.awt.* YOU ARE HERE. Graphische Benutzungsoberflächen. GUI-Bibliotheken in Java: JFC. Unterschied AWT - Swing YOU ARE HERE Einführung Objektorientierte Modellierung Java-Sprachkonstrukte Java-Klassenbibliothek Zeichenketten Dateien und Streams Datenstrukturen Networking Grafische Benutzungsoberflächen Komponenten

Mehr

...erinnern Sie sich? oopjs4b / kwhbkd4r

...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

Mehr

GUI-Programmierung in Java

GUI-Programmierung in Java GUI-Programmierung in Java Jan Pihl, Daniel Bugdalle 1. Einleitung Betreuer: Thomas Ströder Die Bedienung von Software stellt sich oft als etwas schwierig für viele Nutzer heraus, wenn es keine grafische

Mehr

Grundlagen der Programmierung APPLETS

Grundlagen 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

Mehr

Objektorientierte Softwareentwicklung

Objektorientierte Softwareentwicklung Objektorientierte Softwareentwicklung Exkurs GUI-Programmierung mit Java-SWING Die Inhalte der Vorlesung wurden primär auf Basis der angegebenen Literatur erstellt. Für Hinweise und konstruktive Kritik

Mehr

Inhaltsverzeichnis Einleitung...1 Die Begleit-CD zu diesem Buch...5 Erweiterungen für Java Ereignisse...15

Inhaltsverzeichnis Einleitung...1 Die Begleit-CD zu diesem Buch...5 Erweiterungen für Java Ereignisse...15 Inhaltsverzeichnis 1 Einleitung...1 1.1 Von Java bis Swing?...1 1.2 Wer sind Sie?...1 1.3 Was dieses Buch nicht ist...2 1.4 Die Gliederung dieses Buches...2 1.5 Konventionen...2 1.6 Zeit, anzufangen...4

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung Exkurs: Graphische Benutzeroberflächen FH Braunschweig/Wolfenbüttel Sommersemester 2009 1 / 22 Gliederung I Wiederholung Klassen, Objektorientierung (Kapitel 10,11) Exkurs:

Mehr

Benutzeroberflächen. Java Teil 4

Benutzeroberflächen. Java Teil 4 Benutzeroberflächen Java Teil 4 Einleitung Eine grafische Benutzeroberfläche (Graphical User Interface) ermöglicht dem Benutzer die Interaktion mit dem Computer über grafische Symbole. Die GUI haben in

Mehr

Java Design und Event Handling. Natascha Hoebel Professur Prof. R. V. Zicari. AWT SWING Layout Design Event Handling

Java Design und Event Handling. Natascha Hoebel Professur Prof. R. V. Zicari. AWT SWING Layout Design Event Handling Java Design und Event Handling Natascha Hoebel Professur Prof. R. V. Zicari AWT SWING Layout Design Event Handling Benutzerschnittstellen User Interfaces (UI) UI: GUI, WEB-Schnittstellen GUI: interaktive

Mehr

Java GUI Entwicklung mit Swing

Java 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

Mehr

Swing Grundlagen. Andre Eichmann

Swing Grundlagen. Andre Eichmann 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,

Mehr

GRAFISCHE BENUTZERSCHNITTSTELLEN

GRAFISCHE 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

Mehr

Rückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum

Rü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

Mehr

Liste Programmieren Java Überblick

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

Mehr

Rückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum

Rü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

Mehr

Design Patterns 2. Model-View-Controller in der Praxis

Design Patterns 2. Model-View-Controller in der Praxis Design Patterns 2 Model-View-Controller in der Praxis Design Patterns Oft Schablonen für eine Klassenstruktur... aber nicht immer! Dahinterliegende Konzepte wichtiger als wörtliche Umsetzung Pattern werden

Mehr

Vorlesung Programmieren. Bisher... Apple Lisa Office System 3.1. GUIs mit Java

Vorlesung Programmieren. Bisher... Apple Lisa Office System 3.1. GUIs mit Java Vorlesung Programmieren GUIs mit Java Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck https://www.itm.uni-luebeck.de/people/fischer Bisher... 2 Apple Lisa Office System 3.1 3 Graphical

Mehr

GUI. Programmiermethodik. Eva Zangerle Universität Innsbruck

GUI. Programmiermethodik. Eva Zangerle Universität Innsbruck GUI Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle

Mehr

EAD II Übung 5. Graphische Benutzungsoberfläche mit BlueJ

EAD 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,

Mehr

6. Objektorientiertes Design

6. Objektorientiertes Design 6. Objektorientiertes Design 6.1 Entwurfsmuster 6.2 Zusammenfassendes Beispiel 6.3 Umsetzung des Model-View-Controller- Musters in Java 6. Objektorientiertes Design 6-1 Grundlage des objektorientierten

Mehr

Wiederholung: Objektorientierte Oberflächen-Programmierung mit Java und Swing

Wiederholung: 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

Mehr

Computergrafik 2016 Oliver Vornberger. Kapitel 02: Grafische Benutzeroberflächen

Computergrafik 2016 Oliver Vornberger. Kapitel 02: Grafische Benutzeroberflächen Computergrafik 2016 Oliver Vornberger Kapitel 02: Grafische Benutzeroberflächen 1 RaufRunterApplet http://www-lehre.inf.uos.de/~cg/2016/skript/applets/raufrunter/app.html 2 GUI-Programmierung Windowmanager

Mehr

Kap. 36. SWING: Menüs. und weitere SWING-Container. Seán Dempsey

Kap. 36. SWING: Menüs. und weitere SWING-Container. Seán Dempsey Kap. 36 SWING: Menüs und weitere SWING-Container Seán Dempsey Grundlagen von Menüs Hauptklasse: JMenuBar SWING- Entsprechung der AWT-Menüklasse MenuBar JMenuBar Menüleiste (JMenuBar) enthält Menüs (JMenu)

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 14 Einstieg in die Informatik mit Java Swing Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 14 1 Einführendes Beispiel 2 Eigenschaften von Swing 3 Typisches Swing-Applet

Mehr

Swing. 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 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

Mehr

GUI Programmierung in Java

GUI Programmierung in Java vs und niemals mischen! Daher muss man sich für eine Klasse entscheiden 1 (Abstract Window Toolkit) schwergewichtige Alle Elemente werden vom Betriebssytem gemalt sehen aus wie alle anderen Programme auf

Mehr

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 15/16. Kapitel 7. Grafische Benutzeroberflächen 1

Einfü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.

Mehr

Ist eine Softwarekomponente, die dem Benutzer eines Computers die Interaktion mit der Maschine über grafische Symbole erlaubt

Ist 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

Mehr

Funktionale und Objekt-Orientierte Programmierkonzepte

Funktionale 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

Mehr

Java für Computerlinguisten

Java 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

Mehr

Javakurs für Fortgeschrittene

Javakurs für Fortgeschrittene Javakurs für Fortgeschrittene Einheit 02: Streams filtern, Swing Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Datenströme (Streams) Filtern FilterWriter, - Reader 2.

Mehr

Sommersemester Implementierung III: GUI und Verhalten (Teil 2)

Sommersemester 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

Mehr

und mein Button JButton

und mein Button JButton und mein Button JButton 1 javax.swing Klassenbibliothek für Oberflächen weitestgehend selbst in Java programmiert sehr flexibel ziemlich langsam Layoutmanager und Eventhandling werden von awt übernommen

Mehr

Programmieren 2 Selbststudium Semesterwoche 4

Programmieren 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"

Mehr

Drucken, GUI, Design Pattern,... PDF, Usability, Observer Pattern, MVC

Drucken, GUI, Design Pattern,... PDF, Usability, Observer Pattern, MVC Drucken, GUI, Design Pattern,... PDF, Usability, Observer Pattern, MVC Progwerkstatt Philipp Güttler, Christoph Schied, Nicolai Waniek 01.12.2008 Seite 2 Drucken Drucken ist eigentlich ganz einfach...

Mehr

AK-Automatisierungs und Kommunikationstechnik TI Technische Informatik. NWT Netzwerktechnik www.munz-udo.de

AK-Automatisierungs und Kommunikationstechnik TI Technische Informatik. NWT Netzwerktechnik www.munz-udo.de Stand FTE2 Anfang 4. Semester plus Projekt Multiuhren_Thread Ich gehe im Hinblick auf Klassenarbeiten und der Abschlussprüfung davon aus, dass Sie das Skript OOP JAVA2 durchgearbeitet haben. Wir haben

Mehr

Ausgewählte Implementierungsprobleme

Ausgewählte Implementierungsprobleme Ausgewählte Implementierungsprobleme Rebecca Tiarks 15. Januar 2009 1 / 56 Inhaltsverzeichnis 1 2 / 56 AWT grafische Benutzeroberfläche (GUI) erste API von Sun AWT bietet GUI-Komponenten, Operationen zum

Mehr

Projektarbeit Java. 4-Gewinnt. Berner Fachhochschule. 2004, Labor für Technische Informatik

Projektarbeit Java. 4-Gewinnt. Berner Fachhochschule. 2004, Labor für Technische Informatik Berner Fachhochschule Hochschule für Technik und Informatik, HTI Fachbereich Elektro- und Informatik Labor für technische Informatik Projektarbeit Java 4-Gewinnt 2004, Labor für Technische Informatik Dateiname:

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren GUIs mit Java Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck https://www.itm.uni-luebeck.de/people/fischer Bisher... 2 Apple Lisa Office System 3.1 3 Graphical

Mehr

In Track B generell gute Java-Kenntnisse vorausgesetzt!

In Track B generell gute Java-Kenntnisse vorausgesetzt! Gliederung Track A (Technik, montags): A1. Eingabe- und Ausgabetechnik bei Rechnersystemen A2. Technik der digitalen Bildverarbeitung A3. Technik der digitalen Tonverarbeitung A4. Technik der digitalen

Mehr

Prof. 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 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

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer

Mehr

Techniken der Projektentwicklung

Techniken der Projektentwicklung Einleitung Architektur Swing Beispiele Aufgabe Techniken der Projektentwicklung Swing Concepts Ingo Lütkebohle Termin 11 Ingo Lütkebohle Techniken der Projektentwicklung 1 Einleitung Architektur Swing

Mehr

Vorlesung 13. Sitzung Grundlegende Programmiertechniken

Vorlesung 13. Sitzung Grundlegende Programmiertechniken Vorlesung 13. Sitzung Grundlegende Programmiertechniken Wintersemester 2007/2008 Dozent Nino Simunic M.A. Computerlinguistik, Campus DU Grundlegende Programmiertechniken, WS 2007/2008 GUI-Entwicklung mit

Mehr

GUI-Programmierung. Kapitel 2. 2.1 Der Window-Manager

GUI-Programmierung. Kapitel 2. 2.1 Der Window-Manager Kapitel 2 GUI-Programmierung Das erste Window-System wurde in den 70er Jahren von Xerox PARC entwickelt. Ende der 70er Jahre traten die grafischen Oberflächen mit den Apple Computern Lisa und Macintosh

Mehr

Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.2

Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.2 Inhalt 1. Drag and Drop (DnD) 1. Transfer-Mechanismus 2. Transfer-Support 3. Cursor-Symbole 4. Einführendes Beispiel 5. Komponenten DnD-fähig machen 6. Standard DnD-Verhalten ändern Folie 1 Lernziele Sie

Mehr

Graphische Oberflächen Teil 1

Graphische Oberflächen Teil 1 Graphische Oberflächen Teil 1 AWT und Swing Grundlegender Aufbau von GUIs Graphikausgabe Layoutmanagement Ereignismodell Menus und Actions GUI Elemente Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer

Mehr

Graphical User Interfaces

Graphical 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

Mehr

/** Main-Methode erzeugt einen neuen Editor zum Testen */ public static void main(string[] args) { new Editor();

/** Main-Methode erzeugt einen neuen Editor zum Testen */ public static void main(string[] args) { new Editor(); Bereich: Grafische Benutzeroberflächen (UI), Events (2) Editor Package: de.dhbwka.java.exercise.ui.editor Klasse: Editor Aufgabenstellung: Schreiben Sie einen kleinen Texteditor mit Swing! Keine Panik,

Mehr

Packages. Man kann mehrere Klassen in eine package zusammenfassen.

Packages. Man kann mehrere Klassen in eine package zusammenfassen. Packages Man kann mehrere Klassen in eine package zusammenfassen. Diese müssen dann in einem Unterverzeichnis liegen, dessen Name der Packagename ist. Jede Datei der Package muss mit package ; beginnen,

Mehr

Grafische Benutzungsschnittstellen (GUIs) mit Swing

Grafische Benutzungsschnittstellen (GUIs) mit Swing Java: Kapitel 7 Grafische Benutzungsschnittstellen (GUIs) mit Swing Programmentwicklung WS 2008/2009 Holger Röder holger.roeder@informatik.uni-stuttgart.de Überblick über Kapitel 7 Die GUI-Bibliotheken

Mehr

Kapitel X - Grafische Benutzeroberflächen mit Java und Swing

Kapitel X - Grafische Benutzeroberflächen mit Java und Swing Kapitel X - Grafische Benutzeroberflächen mit Java und Swing SWT I Sommersemester 2010 Walter F. Tichy, Andreas Höfer, Korbinian Molitorisz IPD Tichy, Fakultät für Informatik KIT die Kooperation von Forschungszentrum

Mehr

NTB Druckdatum: 01.04.13 -

NTB 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

Mehr

Institut für Informatik

Institut 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,

Mehr

Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.1. Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.1

Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.1. Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.1 Inhalt 1. Swing Komponenten 1. Klassenhierarchie 2. Beteiligte Packages 3. Schachtelungs-Hierarchie 4. Swing-Applikation als Klasse 2. Basis Komponente 1. JComponent 3. Text Komponenten 1. JLabel 2. JTextField

Mehr

7. Architektur interaktiver Systeme

7. 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

Mehr

DHBW Karlsruhe, Angewandte Informatik Programmieren in JAVA https://www.iai.kit.edu/~javavorlesung W. Geiger, T. Schlachter, C. Schmitt, W.

DHBW Karlsruhe, Angewandte Informatik Programmieren in JAVA https://www.iai.kit.edu/~javavorlesung W. Geiger, T. Schlachter, C. Schmitt, W. Bereich: Grafische Benutzeroberflächen (UI), Events (1) Währungsumrechner (2) Package: de.dhbwka.java.exercise.ui.event Musterlösung Klasse: CurrencyCalculator package de.dhbwka.java.exercise.ui.event;

Mehr

Grafische Benutzeroberflächen

Grafische 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

Mehr

14 Swing-Komponenten. 2009 2014, Prof. Dr. D. Ratz

14 Swing-Komponenten. 2009 2014, Prof. Dr. D. Ratz 14 Swing-Komponenten 2009 2014, Prof. Dr. D. Ratz 14.1 Typische Komponenten für Benutzerschnittstellen Das Abstract Window Toolkit (AWT) liefert bereits viele Möglichkeiten für Komponenten für graphische

Mehr

Grundkurs Programmieren in Java

Grundkurs Programmieren in Java Dietmar Ratz Jens Scheffler Detlef Seese Jan Wiesenberger Grundkurs Programmieren in Java Band 2: Programmierung kommerzieller Systeme HANSER Inhaltsverzeichnis Vorwort 15 1 Einleitung 17 1.1 Java - definitiv

Mehr

Programmierkurs. 11. Vorlesung. Sven Mallach. 13. Januar 2010. Institut für Informatik - Lehrstuhl Prof. Dr. M. Jünger 1/ 60

Programmierkurs. 11. Vorlesung. Sven Mallach. 13. Januar 2010. Institut für Informatik - Lehrstuhl Prof. Dr. M. Jünger 1/ 60 Programmierkurs 11. Vorlesung Sven Mallach Institut für Informatik - Lehrstuhl Prof. Dr. M. Jünger 13. Januar 2010 1/ 60 Klausuren 1. Termin: Di. 23.02.2010 2. Termin: Do. 18.03.2010 Uhrzeit: In beiden

Mehr

Ziel dieses Kapitels: Einführung in die Grundzüge der Programmierung graphischer Benutzeroberflächen (engl.: "graphical user interface", GUI) in Java

Ziel 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

Mehr

Programmieren II. Grafische Benutzeroberflächen mit Swing. Heusch 2 (2.Bd) Ratz 13, 14. www.kit.edu. Institut für Angewandte Informatik

Programmieren II. Grafische Benutzeroberflächen mit Swing. Heusch 2 (2.Bd) Ratz 13, 14. www.kit.edu. Institut für Angewandte Informatik Programmieren II Grafische Benutzeroberflächen mit Swing Heusch 2 (2.Bd) Ratz 13, 14 KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

Grafische Benutzeroberflächen Container Menüs JComponent JLabel/JTextField Buttons Events und Listener. Programmieren I.

Grafische Benutzeroberflächen Container Menüs JComponent JLabel/JTextField Buttons Events und Listener. Programmieren I. Programmieren I Martin Schultheiß Hochschule Darmstadt Sommersemester 2011 1 Grafische Benutzeroberflächen 2 Container 3 Menüs 4 JComponent 5 JLabel/JTextField 6 Buttons 7 Events und Listener Einführung:

Mehr

2. Programmierung von Benutzungsschnittstellen

2. Programmierung von Benutzungsschnittstellen 2. Programmierung von Benutzungsschnittstellen 2.1 Modell-Sicht-Paradigma 2.2 Bausteine für grafische Oberflächen 2.3 Ereignisgesteuerte Programme 1 Benutzungsoberflächen Technische Realisierungen: Stapelverarbeitungssprache

Mehr

Grafische Benutzeroberflächen

Grafische 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"

Mehr

04 - Actions. Actions

04 - Actions. Actions Actions Motivation!In verschiedenen Swing-Komponenten werden ausgelöste Aktionen durch ActionListener behandelt.!häufig werden gleiche Aktionen durch verschiedene Swing-Komponenten ausgelöst. Z.B. durch

Mehr

SWT. -The Standard Widget Toolkit- Inhaltsverzeichnis. Thomas Wilhelm SWT. 1. Was ist SWT?

SWT. -The Standard Widget Toolkit- Inhaltsverzeichnis. Thomas Wilhelm SWT. 1. Was ist SWT? Java -The Standard Widget Toolkit- Inhaltsverzeichnis 1. Was ist? - Vorteile von - Nachteile von 2. Vorbereitungen für 3. Das erste Programm in 4. Widgets und Styleparameter 5. - Layouts Was ist ein Widget?

Mehr

Grafische Benutzeroberflächen mit Swing

Grafische Benutzeroberflächen mit Swing Grafische Benutzeroberflächen mit Swing Jan Krüger jkrueger@techfak.uni-bielefeld.de Organisatorisches Dienstags, 16.6.2008 (12 14 Uhr) in H13 1. Teil Überblick über Java/Swing Designpattern : MVC 2. Teil

Mehr

Vermittler (Mediator) Sabine Müller - Sven Richter - Jens Wagenbreth 03IN2-P-D

Vermittler (Mediator) Sabine Müller - Sven Richter - Jens Wagenbreth 03IN2-P-D Vermittler (Mediator) Sabine Müller - Sven Richter - Jens Wagenbreth 03IN2-P-D 1 1. EINLEITUNG... 3 2. ZWECK... 3 3. MOTIVATION... 3 4. ANWENDBARKEIT... 6 5. STRUKTUR... 6 6. TEILNEHMER... 7 7. INTERAKTION...

Mehr

Automatisierung des Tests

Automatisierung des Tests Hochschule Furtwangen University Aktuelle Themen der Informatik Automatisierung des Tests von Java-Swing-GUIs von Dominik Jall CN 7 Agenda Einführung Was ist Swing? Warum GUIs automatisiert testen? Werkzeuge

Mehr

JGoodies Karsten Lentzsch DESKTOP-MUSTER & DATENBINDUNG

JGoodies Karsten Lentzsch DESKTOP-MUSTER & DATENBINDUNG JGoodies Karsten Lentzsch DESKTOP-MUSTER & DATENBINDUNG JGoodies Quelloffene Swing-Bibliotheken Beispielanwendungen Gestalte Oberflächen Berate zu Desktop und Swing In Expertengruppen zu JSRs 295 und 296

Mehr

Heute. 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 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

Mehr

import java.awt.*; import java.awt.event.*; import javax.swing.*;

import 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

Mehr

PROG 2: Einführung in die Programmierung für Wirtschaftsinformatiker

PROG 2: Einführung in die Programmierung für Wirtschaftsinformatiker GUI-Programmierung mit Java PROG 2: Einführung in die Programmierung für Wirtschaftsinformatiker Steffen Helke Technische Universität Berlin Fachgebiet Softwaretechnik 15. April 2013 Übersicht GUI-Bibliotheken

Mehr

Projekt AGB-10 Fremdprojektanalyse

Projekt AGB-10 Fremdprojektanalyse Projekt AGB-10 Fremdprojektanalyse 17. Mai 2010 1 Inhaltsverzeichnis 1 Allgemeines 3 2 Produktübersicht 3 3 Grundsätzliche Struktur und Entwurfsprinzipien für das Gesamtsystem 3 3.1 Die Prefuse Library...............................

Mehr

Grafische Benutzungsschnittstellen (GUIs) mit Swing

Grafische Benutzungsschnittstellen (GUIs) mit Swing Java: Kapitel 7 Grafische Benutzungsschnittstellen (GUIs) mit Swing Programmentwicklung WS 2009/2010 Holger Röder holger.roeder@informatik.uni-stuttgart.de Überblick über Kapitel 7 Die GUI-Bibliotheken

Mehr

Ereignisbehandlung 21

Ereignisbehandlung 21 Ereignisbehandlung 21 3 Ereignisbehandlung Dieses Kapitel beschäftigt sich mit der Ereignisbehandlung, d.h. der Reaktion eines Programms auf Eingaben durch benutzende Personen. Nach einigen ersten Beispielen

Mehr

Java Lab 2006/12/13 Client

Java Lab 2006/12/13 Client Java Lab 2006/12/13 Client Prof. Dr. Bernhard Humm Version: 1.0 Date: 2006/12/06 Darmstadt University of Applied Sciences Department of Computer Science Schöfferstr. 8b 64295 Darmstadt Germany 1 Einleitung

Mehr