Einführung in die Programmierung für NF. Übung

Ähnliche Dokumente
Zentrale Objekte zur Programmierung graphischer Benutzeroberflächen (GUI)

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

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

Ereignisse (Events) in Java

CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)

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

Java für Computerlinguisten

Einführung in Swing. Graphical User Interface

GUI Programmierung mit javax.swing

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

Einführung in die Programmierung für NF. Übung

Einführung in GUI-Programmierung. javax.swing

Javakurs für Fortgeschrittene

JLabel. dient zur Textanzeige. können auch Bilder anzeigen: mylabel.seticon( new ImageIcon( C:/Pfad/zum/Bild.jpg )

Ho Ngoc Duc IFIS - Universität zu Lübeck

Einführung in die Programmierung für NF. Grafische Benutzeroberflächen

Einführung: Grafische Benutzeroberflächen. Programmieren II. Dr. Klaus Höppner. Hochschule Darmstadt Sommersemester / 22

Einführung in die Programmierung für NF MI. Übung 11

Medientechnik. Übung 2 Java Swing

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

7. Architektur interaktiver Systeme

GroupLayout Anmerkung

Sommersemester Implementierung III: GUI und Verhalten (Teil 2)

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

GUI Programmierung mit JAVA Swing

Java I Vorlesung 11 Graphische Oberflächen mit Swing

Einführung in GUI-Programmierung. javax.swing

Heute. Grafische Benutzeroberflächen (Anonyme) innere Klassen Einfache Simulationen main / ausführbare jar-files IT I - VO 11 1

Programmiertechnik GUI Programmierung mit Java Swing

Java GUI Entwicklung mit Swing

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik GUI-Programmierung mit Swing

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

Objektorientierte Software-Entwicklung

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

Ziele. Kapitel 8: Grafische Benutzerschnittstellen. AWT und Swing. Ziele (2)

Kapitel 8: Grafische Benutzerschnittstellen

JAVA Oberflächen mit Swing

3-schichtige Informationssystem-Architektur

Grafische Benutzeroberflächen mit Swing

NTB Druckdatum:

11. GUI-Programmierung mit SWING Überblick

Funktionale und Objekt-Orientierte Programmierkonzepte

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

Grafische Benutzeroberflächen

JAVA Oberflächen mit Swing

Vorlesung Programmieren

GUI Programmierung in Java

5. Java Swing Grundlagen der Programmierung II (Java) Prof. Dr. Bernhard Humm Hochschule Darmstadt University of Applied Sciences Sommersemester 2006

Programmiermethodik. Übung 7

Grundlagen der Programmierung APPLETS

Einführung in die Programmierung für NF. Übung

GUI-Programmierung mit Java. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 11: GUI 1: AWT (1) GUI-Programmierung mit Java.

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

Tag 9: Grafische Benutzeroberflächen

DHBW Karlsruhe, Angewandte Informatik Programmieren in JAVA W. Geiger, T. Schlachter, C. Schmitt, W.

Einführung in die Programmierung für NF. Übung

Grafische Benutzeroberflächen

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

Graphische Benutzungsoberflächen

Graphische Oberflächen Teil 1

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

Swing :Komponenten I (Teil 2)

Swing. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java

...erinnern Sie sich? oopjs4b / kwhbkd4r

Objektorientierte Programmierung

Javakurs für Fortgeschrittene

Layout Manager. Astrid Beck FHT Esslingen

Hochschule der Medien Prof. Uwe Schulz 13. Juli 2009 Klausur Informatik, EDV-Nr Seite 1 von 6. Teil 2: Aufgaben

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

Programmieren in Java

Grafische Benutzeroberflächen mit Swing (2)

jcontentpane.setlayout(new BorderLayout()); // unten JPanel unten = new JPanel(); unten.setlayout( new BoxLayout(unten, BoxLayout.

Graphical User Interfaces

Grafische Benutzeroberflächen

Grundkurs Programmieren in Java

Techniken der Projektentwicklung

Vorlesung 13. Sitzung Grundlegende Programmiertechniken

13 Grafische Oberflächen , Prof. Dr. D. Ratz

Objektorientierte Softwareentwicklung

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

Oliver Brinkmann Java Swing-Applikationen & JApplets (mit NetBeans)

Graphische Oberflächen Teil 1

GUI-Programmierung in Java

GUI. Programmiermethodik. Eva Zangerle Universität Innsbruck

Einführung in die Programmierung für NF. Übung 08

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

Anwendungen mit GUI. INE2, Mittwoch / TH561 M. Thaler, Office TG208.

1. Konventionelle Ein-/Ausgabebetonte Programmierung

Schablonen für Klassen, Interfaces oder Methoden, die noch nicht festgelegte Datentypen verwenden

Softwaretechnik. Inhaltsverzeichnis. M. Jakob. 15. März Grundlagen der Projektorganisation

Softwaretechnik. M. Jakob. 15. März Gymnasium Pegnitz

Universität Paderborn Prof. Dr. Stefan Böttcher. Kapitel 3: Java Applets

Inhaltsverzeichnis. 1 Einleitung 9. Inhalt

Kapitel 2: Grafische Benutzeroberflächen

Transkript:

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 09 2

Korrektur Blatt 8 Musterlösung wieder auf der Homepage zum Download (ohne Listen-Funktionen) Kann zur Vorlage für Blatt 9 dienen Einführung in die Programmierung für NF Übung 09 3

Wiederholung Design Patterns MVC Pattern Logische Trennung von Model, View und Controller Model: Anwendungslogik View: Sichtbares User Interface Controller: Kommunikation zwischen Model und View, Start der Applikation Einführung in die Programmierung für NF Übung 09 4

Wiederholung Design Patterns Observer Pattern Trennung von Aktion und Reaktion Ein Observer überwacht ein Observable In unserem Fall: Model ist ein Observable View ist ein Observer und beobachtet das Model View ändert/aktualisiert ihre Anzeige, wenn sich die Daten im Model ändern Einführung in die Programmierung für NF Übung 09 5

Java AWT Das Abstract Window Toolkit (AWT) ist eine API zur Entwicklung von grafischen Oberflächen in Java AWT ist plattformunabhängig und verfügt daher über einen sehr beschränkten Umfang Umfang erweiterbar durch Java Swing Einführung in die Programmierung für NF Übung 09 6

Java Swing Swing ist die Standardbibliothek für grafische Oberflächen in Java und erweitert das AWT Sie verfügt über Zeichenfunktionen grafischer Grundelemente und Farben Sie bietet grafische Steuerelemente Sie definiert ein Modell zur Behandlung von Ereignissen wie z.b. Mausklicks http://openbook.galileocomputing.de/javainsel9/javainsel_19_001.htm Einführung in die Programmierung für NF Übung 09 7

Erstellung eines Fensters Oberklasse JFrame JFrame f = new JFrame("Titel"); Public class View extends JFrame {} Erzeugt einen Rahmen (Frame), in dem sich der restliche Inhalt befindet http://openbook.galileocomputing.de/javainsel9/javainsel_19_003.htm Einführung in die Programmierung für NF Übung 09 8

Erstellung eines Fensters JFrame beinhaltet mehrere wichtige Standardfunktionen: setdefaultcloseoperation(jframe.exit_on_close ); setsize(int width, int height); setvisible(boolean visible); Beispiel: JFrame f = new Frame("Beispiel"); f.setdefaultcloseoperation(jframe.exit_on_close); f.setsize(300,200); f.setvisible(true); Einführung in die Programmierung für NF Übung 09 9

Java Swing Komponenten In einem JFrame werden nun die weiteren Elemente platziert JPanel als Container für mehrere Elemente JLabel für Beschriftungen und Text allgemein JList für Listendarstellungen JButton für Schaltflächen JSlider, JScrollbar, JCheckbox, JProgressBar, JComboBox, JSpinner u.v.m. Einführung in die Programmierung für NF Übung 09 10

Platzierung von Komponenten Hinzufügen eines Elements: JFrame frame = new JFrame("Beispiel"); JLabel label = new JLabel ("Irgendein Text"); frame.add(label); oder mit Container JFrame frame = new JFrame("Beispiel"); JPanel panel = new JPanel(); JLabel label = new JLabel ("Irgendein Text"); panel.add(label); frame.add(panel); Einführung in die Programmierung für NF Übung 09 11

Verwendung von Layoutmanagern Containern oder Elemente können so nur (nacheinander) platziert werden Für die Umsetzung von Layouts gibt es eine Vielzahl an Layoutmanagern Hier relevant sind FlowLayout und BorderLayout http://openbook.galileocomputing.de/javainsel9/javainsel_19_011.htm Einführung in die Programmierung für NF Übung 09 12

FlowLayout Das FlowLayout ordnet die platzierten Elemente einfach der Reihe nach an Es ist sehr einfach zu implementieren, denn es muss nur als Layout festgelegt werden Einführung in die Programmierung für NF Übung 09 13

FlowLayout JFrame frame = new JFrame("Beispiel"); frame.setlayout( new FlowLayout() ); frame.add( new JLabel ("Hallo") ); frame.add( new JLabel ("Welt") ); frame.pack(); frame.setvisible(true); Einführung in die Programmierung für NF Übung 09 14

BorderLayout Das BorderLayout verfügt über 5 Positionen: Die vier Himmelsrichtungen und die Mitte (Center) Die Elemente im Norden und Süden richten sich in der Höhe am Inhalt und erstrecken sich über die gesamte Fensterbreite Die Elemente in Westen und Osten werden von der Höhe passend gestreckt, die Breite kann definiert werden Das Element in der Mitte wird immer angepasst Einführung in die Programmierung für NF Übung 09 15

BorderLayout Die Position wird in der add()-funktion mit übergeben, bleibt der Parameter leer, wird automatisch in der Mitte platziert frame.setlayout( new BorderLayout() ); frame.add( new JButton(), BorderLayout.NORTH ); frame.add(new JButton(), BorderLayout.WEST ); frame.add(new JButton(), BorderLayout.CENTER ); frame.add(new JButton(), BorderLayout.EAST ); Einführung in die Programmierung für NF Übung 09 16

Verwendung von Layoutmanagern JPanels können ebenfalls eigene Layoutmanager zur Anordnung des Inhalts bekommen Alle Elemente (besonders JPanels) können beliebig ineinander verschachtelt werden Dringende Video-Empfehlung: https://www.youtube.com/user/sep1213 Einführung in die Programmierung für NF Übung 09 17

Fragen zum Übungsblatt? Einführung in die Programmierung für NF Übung 09 18