Softwareentwicklung 2

Größe: px
Ab Seite anzeigen:

Download "Softwareentwicklung 2"

Transkript

1 (1) Softwareentwicklung 2 Universität Paderborn Fachbereich Mathematik/Informatik (17) Sommersemester 2003 Prof. Dr. Stefan Böttcher mit Unterlagen erstellt von Prof. Dr. Gerd Szwillus (2) 0 Einleitung Ziele der Vorlesung: Die Studierenden sollen ihre Kenntnisse in der Programmentwicklung in Java vertiefen lernen, Sprachkonstrukte sinnvoll und mit Verständnis anzuwenden. lernen, Software aus objektorientierten Bibliotheken (z.b. Swing) wiederzuverwenden. grundlegende Konzepte der nebenläufigen Programmierung verstehen und anzuwenden lernen. Erfahrungen im praktischen Arbeiten im Team erwerben. Darauf bauen größere praktische Entwicklungen in Java oder anderen Programmiersprachen während des Studiums und danach auf. Gliederung: 1. Vorbereitung der Programmierung grafischer Oberflächen 2. Programmierung graphischer Benutzungsschnittstellen (mit Swing) 3. Applets 4. Nebenläufigkeit, Threads und Synchronisation

2 (3) 1 Vorbereitung der Programmierung grafischer Oberflächen 1.1 Verwendung von Konstruktoren Der Default-Konstruktor (=Standard-Konstruktor) ist parameterlos und wird implizit aufgerufen, sofern nicht explizit ein anderer Konstruktor asufgerufen wird. Beispiele dazu in der Vorlesung 1.2 Verwendung von super( ) super(...) ; ruft den Konstruktor der Oberklasse, muß erster Befehl in der Konstruktorimplementierung sein. super() ; wird implizit als erster Befehl im Konstruktor aufgerufen, wenn dort kein anderer Konstruktoraufruf der Oberklasse explizit aufgerufen wird. Idee: Jede (Unter-)Klasse initialisiert die jeweils (zusätzlich) definierten Attribute in ihrem Konstruktor. Beispiel dazu in der Vorlesung 1.3 Verwendung von super.m( ) super.m() ; ruft Methode m() der Oberklasse auf (statt Methode m() der Klasse selbst). Häufig verwendet in Methode einer m(), die die Methode m() der Oberklasse nur geringfügig erweitern will und durch diesen Aufruf die Funktionalität der Methode m() der Oberklasse einbindet. Beispiel dazu in der Vorlesung super.m() verhindert einen rekursiven Aufruf. (4)

3 (5) 1.4 Benutzung von vordefinierten Java-Klassenbibliotheken Dateistruktur der Dokumentation und Paketstruktur von Java-Bibliotheken Nutzung der Klasse String Warum finde ich System.out.println( string1 ) NICHT in der Klasse String (sondern über die Klassen System und PrintWriter)? Weil entscheidend ist, an welches Objekt println(...) geschickt wird (System.out). Aufbau und Organisation der Java-Dokumentation. Suche von Klassen (z.b. String), Methoden (z.b. compareto(...) ) und Interfaces (z.b. Comparable) in der Java-Dokumentation Bedeutung der Vererbungshierarchie (z.b. Ableitung von der Klasse Object): für einen formalen Parameter Referenz auf eine allgemeinere Klasse (z.b. Referenz auf Objekt) kann man eine Referenz auf eine speziellere Klasse (z.b. Referenz auf String) einsetzen, z.b. um compareto(...) auf Strings anzuwenden. Am Computer demonstrierte Beispiele in der Vorlesung. 1.5 Namenlose (anonyme) Klassen dienen dazu abweichendes Verhalten (hier die show( )-Funktion) zu definieren, das nur an einer Stelle (hier für den Punkt p) benötigt wird. class Punkt double x,y ; Punkt (double xn, double yn)x=xn;y=yn; void show() System.out.println("("+x+","+y+")"); class Test public static void main(string[] args) Punkt p = new Punkt(3,4)void show() System.out.print("(x,y)="); super.show(); ; p.show() ; häufig benutzt in grafischen Oberflächen (z.b. beim Hinzufügen von Routinen zur Ereignisbehandlung). (6)

4 (7) 2 Programmierung graphischer Benutzungsschnittstellen (mit Swing) Gliederung: Graphische Benutzungsschnittstellen (GUI = Graphical User Interface) Was ist anders in der Benutzung als bei nicht-graphischen Benutzungsschnittstellen? Was ist überhaupt schwierig daran, GUIs zu programmieren? Die Swing-Klassenhierarchie, Verwendung von Bibliotheken Wie ändert sich die Programmstruktur bei GUIs? Abläufe in einer graphischen Benutzungsschnittstelle Verarbeiten von Ereignissen, Umgang mit nebenläufigen Vorgängen Einsatz der Swing-Komponenten Fenster, Buttons, Label, Menüs,... - wie werden sie programmiert? (8) 2.1 Graphische Benutzungsschnittstellen Graphische Benutzungsschnittstellen dienen zur interaktiven Bedienung von Programmen, Ein- und Ausgabe mit graphischen Techniken und visuellen Komponenten Bedienung durch den Benutzer mit Zeigen, Clicken, Draggen, Tippen, Einrahmen,... (WIMP-Interfaces = Windows, Icons, Menus, Pointers) Benutzer löst Ereignisse aus! Ereignisse müssen abgefangen, erkannt, den richtigen Einheiten zugeordnet und von diesen interpretiert werden Ereignisse sind wesentliches Programmierkonzept!

5 (9) Abkehr von der "readline()-println()"-sichtweise auf die Benutzungsschnittstelle: Bisher: Programm hat volle Kontrolle über den Eingabekanal: public static void main(string [] args) Stream t = new Stream(System.in); System.out.print("Bitte geben Sie Ihren Namen ein: "); String s = t.readline(); System.out.println("Eingelesener Name: "+s);... Dadurch ergibt sich der Ablauf: C:\>java MeinProgramm Bitte geben Sie Ihren Namen ein: Heinrich Eingelesener Name: Heinrich... Nach dem Prompt wartet das Programm, ggf. der gesamt Computer, auf die Eingabe! (10) Jetzt: Einführung der Direkten Manipulation als Grundprinzip Eigene Applikation mit graphischen Bedienelementen Anklicken von Buttons, Bewegen von Elementen in der Zeichenfläche, Menüstrukturen, Fenstermanipulationen, Eintippen von Text,... Eingebettet in ein Fenstersystem! Aber: nicht alleine, sondern nebenläufig vieles gleichzeitig! Die eigene Applikation MS WORD Desktop Die Task-Leiste Ein Zeichenprogramm Bildschirm-Capture-Programm...

6 (11) (12) Konsequenz: Die eigene Applikation muß zu allem anderen "passen"... Wechsel zwischen Applikationen durch Mausbewegung oder TAB-Taste oder ähnliches Entgegennahme von Tastaturereignissen Wiederherstellen von Bildschirminhalten, wenn Fenster verdeckt und wieder aufgedeckt werden Die eigene Applikation darf nicht alles andere blockieren... nämlich zum Window-Manager. Demgemäß muß sie einiges "können": Ausführung beginnen, unterbrechen, wiederaufnehmen und beenden können, wenn "von oben" verlangt Tastaturereignisse "von oben" entgegennehmen, Kontrolle über Tastaturereignisse wieder "verlieren" "Ihren" Bildschirminhalt neu zeichnen, wenn verlangt Selbst in intensiven Rechenzeiten zwischendurch immer wieder "oben" nachfragen, ob andere "Rechenzeit" brauchen

7 (13) Javas Standardbibliothek der Swing-Komponenten (bereits integriert in Java 1.3) enthält wiederverwendbare Klassen zur Implementierung und Benutzung der wichtigsten GUI- Komponenten: - Graphik (Kreise, Linien,...) - GUI - "Widgets" (Buttons, Labels, Scrollbars, Windows, Comboboxes, Textfelder,...) - Plazierung, Layoutmanager - Bildmanipulation (skalieren, anpassen,...) - Ereignisbehandlung leistet vor allem aber die Einbindung in die Fensterumgebung der graphischen Bedienoberfläche (Windows, KDE, Mac,...) (14) Entwicklung von Benutzungsschnittstellen ist einerseits ein Softwareproblem (Java, Programmieren) aber es ist vor allem (inzwischen) ein interdisziplinäres Entwicklungsproblem Gestaltung von Benutzungsschnittstellen Modellierung von Benutzungsschnittstellen Programmieren von Benutzungsschnittstellen Usability Engineering Programmieren von Websites Web Site Usability Web Applikationen (E-Commerce, B2B Applikationen, Datenbankapplikationen,...) Beteiligt an der industriellen Entwicklung von Benutzungsschnittstellen: Softwareentwickler, Psychologen (kognitive), Usability Engineer, Interface Designer, Anwender, Auftraggeber,...

8 (15) 2.2 Verwendung der Swing-Klassenhierarchie Genauer: JFC (Java Foundation Classes) unterstützen die Implementation von GUIs - die Swing- Klassen entsprechen den graphischen Komponenten Nachfolger des awt (Abstract Window Toolkit), erweitert dieses in vieler Hinsicht, insbesondere wählbares Look & Feel (Motif, Windows, Java,...) Einbinden von Swing-Komponenten durch import javax.swing.*; Ein erstes Programm: import javax.swing.*; class Swing1 public static void main(string[] args) JFrame frame = new JFrame("Swing-Programm Nummer Eins"); JLabel label = new JLabel("Hello World"); frame.getcontentpane().add(label); Swing1.java frame.setsize(300,100); frame.setvisible(true); (16)

9 (17) Die Klasse JFrame implementiert gerahmte Fenster in graphischen Benutzungsschnittstellen. Ein JFrame wird auf der Oberfläche als Fenster angezeigt, es hat einen Titel ("Swing-Programm Nummer Eins"), den man beim Erzeugen (Konstruktor), aber auch später mit settitle(..) setzen kann, es hat eine definierte Anfangsgröße (300 breit, 100 hoch, Angabe in Pixel = Bildpunkten des Graphikbildschirms), es wird explizit sichtbar gemacht, es ist eine Container-Klasse - kann also andere Swing-Komponenten aufnehmen (enthalten = to contain) und diese anzeigen, indem man die Swing-Komponente dem ContentPane des Frames hinzufügt. Die Klasse JLabel implementiert eine Textanzeige. Es hat einen Textinhalt, den man beim Erzeugen (Konstruktor), aber auch später mit settext(...) setzen kann. (18) "Fähigkeiten" dieses Programms: Element in der Task-Leiste (Windows), Verschieben, Vergrößern/verkleinern, zum Symbol machen, Wiederherstellen nach Verdecken,...

10 (19) Wann ist das Programm zu Ende? Klick ins "Kreuz" rechts oben: Fenster zu, Programm läuft noch...! Erst CTRL-C beendet das Java-Programm wirklich. (20) Erzeugen des Frames... meldet ihn beim Fenstersystem an, danach lebt der Frame eigenständig weiter, bis er explizit vom Benutzer durch eine Aktion oder von einem Programm, das auf ihn Zugriff hat, beendet wird Variante A des ersten Programms: Programm wird beendet, wenn Frame geschlossen wird Einfügen der folgenden Zeilen frame.addwindowlistener( new WindowAdapter() public void windowclosing(windowevent e) System.exit(0); // Dieser Aufruf beendet jedes Java-Programm ); Benötigt auch den Import der AWT-Klassen (Vorläufer von Swing): import java.awt.*; import java.awt.event.*; Swing2.java

11 (21) Grundidee: Einfügen eines Lauschers in den Frame, der das Drücken auf das Schließen -Kreuz abwartet Wenn dieses Ereignis kommt, wird die Methode windowclosing() ausgeführt Diese Methode wird für unseren Frame so überschrieben, daß System.exit(0); ausgeführt wird. Variante B: Erzeugen vieler Label Grundidee: Statt eines Label 10 Stück erzeugen, alle dem contentpane des Frames hinzufügen, das Ganze anzeigen, Kontrollausdruck mit System.out.println(...) for (int i=0; i < 10; i++) frame.getcontentpane().add(new JLabel("Label "+(i+1))); System.out.println("Label "+(i+1)+" erzeugt."); Ergebnis: Nur Label 10 ist zu sehen...?!?!? Fehler : Standardmäßig wird jede neue Komponente in die Mitte des contentpane plaziert ( BorderLayout.CENTER ) Lösung: Umschalten auf FlowLayout - dann werden alle Komponenten nacheinander von links oben nach rechts unten einkopiert: (22) frame.getcontentpane().setlayout (new FlowLayout()); Swing3.java Ergebnis

12 (23) Variante C: Definition eines eigenen Fenstertyps ( MyFrame ) Unterklasse von JFrame Erzeugen zweier Fenster dieses Typs mit verschiedenen Titel In den Fenstern jeweils wie vorher 10 Labels Alle definierenden Aktionen des Fenstertyps im Konstruktor von MyFrame Im Hauptprogramm: Erzeugen zweier Objekte vom Typ MyFrame public static void main(string[] args) new MyFrame("Erstes Fenster"); new MyFrame("Zweites Fenster"); Optisches Ergebnis Abbruch des Programms bei jedem der beiden Fenster! (24)

13 (25) class MyFrame extends JFrame MyFrame(String s) super(s); getcontentpane().setlayout(new FlowLayout()); Swing4.java for (int i=0; i < 10; i++) getcontentpane().add(new JLabel("Label "+(i+1))); System.out.println("Label "+(i+1)+" erzeugt."); setsize(300,300); setvisible(true); addwindowlistener( new WindowAdapter() public void windowclosing(windowevent e) System.exit(0); ); (26) Variante D: Zeichnen in das Fenster Wieder: Definition eines eigenen Fenstertyps Überschreiben der fenstereigenen paint-methode mit einer eigenen Zeichenroutine class MyFrame extends JFrame MyFrame(String s)... // wie vorher Swing5.java public void paint(graphics g) g.drawline(0,0,300,300); g.drawline(300,0,0,300);

14 (27) Erzeugen zweier Fenster dieser Art liefert (28) JFrame ist Blattknoten in der Swing-Klassenhierarchie Ausschnitt aus der Webseite im Java-Sun-Swing-Tutorial

15 (29) Verschiedene Eigenschaften sind auf verschiedenen Ebenen der Vererbungshierarchie untergebracht: JFrame (swing) - Erweiterung der (älteren) Frame-Klasse des awt, die Frames in die JFC-Umgebung einbindet Frame (awt) - Fenster mit Rand, Titel, Menüleiste, veränderbarer Größe Window (awt) - Fenster ohne Rand Container (awt) - Komponenten, die wieder andere Komponenten aufnehmen können Component (awt) - die eigentlichen GUI-Elemente (Widgets) Object (lang) - die allgemeinste Java-Klasse Viel (auswendig) zu lernen, bzw. viel Sucharbeit in Dokumentationen, optimal parallel geöffnetes Browserfenster nach: Von dort Verzweigen zu allen vorhandenen Packages - genaue Klassenbeschreibung, Hierarchie, Methoden, Variablen,... (30) Ausschnitt aus der Hierarchie der GUI-Komponenten: Component (abstract) darstellbare Komponenten von Benutzungsoberflächen Container (abstract) Behälter für Komponenten Panel konkrete Klasse zu Container, Behälter für Komponenten ScrollPane Sicht auf große Komponente, 2 Rollbalken Window Fenster (ohne Rand, Titel, usw.) Dialog Fenster; fordert interaktive Bearbeitung FileDialog Fenster zur interaktiven Dateiauswahl Frame Fenster mit Rand, Titel, Menüleiste; veränderbare Größe Button Schaltknopf Canvas frei verwendbare rechteckige Zeichenfläche CheckBox An/Aus-Schalter Choice Auswahl aus einer Liste von Texten (ausklappbar) List Auswahl aus einer Liste von Texten (mit Rollbalken) Scrollbar Rollbalken zur Einstellung eines ganzzahligen Wertes Label Textzeile TextComponent editierbarer Text TextField einzelne Textzeile TextArea mehrzeiliger Text mit Rollbalken

16 (31) Optisch: (32) Alle Informationen von der Sun-Website

Graphische Benutzungsoberflächen

Graphische Benutzungsoberflächen Graphische Benutzungsoberflächen Graphische Benutzungsoberflächen (graphical user interfaces, GUI) dienen zur interaktiven Bedienung von Programmen, Ein- und Ausgabe mit graphischen Techniken und visuellen

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

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

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

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

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

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

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

Graphische Benutzungsoberflächen mit Java. Einführung in NetBeans

Graphische 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

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

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

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

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

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

J.1. J.1 GUI-Programmierung in in Java. 2002 Prof. Dr. Rainer Manthey Informatik II 1

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

Mehr

Probeklausur: Programmierung WS04/05

Probeklausur: Programmierung WS04/05 Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,

Mehr

Applets. Applets. Applets. Applet: Java-Programm Eingebettet in einer HTML-Seite Ausführung von einem Java-fähigen Web-Browser oder sog.

Applets. Applets. Applets. Applet: Java-Programm Eingebettet in einer HTML-Seite Ausführung von einem Java-fähigen Web-Browser oder sog. Johann Wolfgang Goethe-Universität Professur für Graphische Datenverarbeitung Fachbereich Informatik und Mathematik Prof. Dr. Detlef Krömker Applet: Java-Programm Eingebettet in einer HTML-Seite Ausführung

Mehr

Graphische Programmierung: GUIs: graphical user interfaces

Graphische Programmierung: GUIs: graphical user interfaces Graphische Programmierung: GUIs: graphical user interfaces Ziel: Java -Programmierung und Handhabung von graphischen Benutzeroberflächen (in Applets) mehrere Fenster Fenster-Eigenschaften: aktiv oder inaktiv

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

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

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

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

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

GUIs in Java und ihre Programmierung

GUIs 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

Mehr

Seite Architektur interaktiver Systeme. 7. Architektur interaktiver Systeme. 7.1 Entkopplung durch Sichten. Schichtenarchitektur

Seite 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

Mehr

Serie 3: Designbeschreibung Verantwortlich für Rose-Projekt und Designbeschreibungen Dang, Quoc Anh / Phan, Ngoc Diep / Xiongjie Ding

Serie 3: Designbeschreibung Verantwortlich für Rose-Projekt und Designbeschreibungen Dang, Quoc Anh / Phan, Ngoc Diep / Xiongjie Ding DESIGNBESCHREIBUNG. 1. Allgemeines.? GeoViewer ist eine menügesteuerte graphische Java-Applikation. VonGEO-Record wird die vordefinierte geometrische Konfiguration geladen, im GeoProver-Paket berechnet

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

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

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

Kapitel 6. Vererbung

Kapitel 6. Vererbung Kapitel 6 Vererbung Vererbung 1 Ziele Das Vererbungsprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen

Mehr

Grafikausgabe mit dem Abstract- Windowing-Toolkit. Eine Einführung

Grafikausgabe mit dem Abstract- Windowing-Toolkit. Eine Einführung Grafikausgabe mit dem Abstract- Windowing-Toolkit Eine Einführung Inhalt Einführung Grundlegende Eigenschaften des Abstract-Windowing- Toolkit (AWT) Grundlagen Grafikausgabe Linien zeichnen Rechtecke zeichnen

Mehr

von Anja Austermann Drag and Drop

von Anja Austermann Drag and Drop von Anja Austermann Drag and Drop »Drag and Drop«ist die Bezeichnung für den Datentransfer zwischen unterschiedlichen Anwendungen mit grafischer Benutzeroberfläche. Zur Zeit arbeitet Drag and Drop in Java

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Probeklausur: Programmierung WS04/05

Probeklausur: Programmierung WS04/05 Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,

Mehr

Interaktive Elemente, GUI-Programmierung

Interaktive Elemente, GUI-Programmierung Softwaretechnik für IM, WS2015/2016 http://knopper.net/bw/swt/ Übung 4 Interaktive Elemente, GUI-Programmierung 1. Schreiben Sie ein Programm (wahlweise als Applet oder Applikation, oder beides), das die

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

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Einbindung der Tastatur

Einbindung der Tastatur Einbindung der Tastatur Auch die Tastatur kann man wie die Maus zur interaktiven Programmsteuerung verwenden. Bei der Maus ist stets klar, welche grafische Komponente bei einem Klick oder einer Bewegung

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

Programmieren in Java

Programmieren in Java Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können

Mehr

Klausur vom 14. Juni 2004. Informatik 4

Klausur vom 14. Juni 2004. Informatik 4 Berner Fachhochschule Hochschule für Technik und Informatik, HTI Fachbereich Elektro- und Kommunikationstechnik Labor für Technische Informatik, Burgdorf Klasse: EV02-1 Name, Vorname: Klausur vom 14. Juni

Mehr

Ansonsten VIEL SPAß! Nicholas Ohs (GK 11 IF 2)

Ansonsten VIEL SPAß! Nicholas Ohs (GK 11 IF 2) !!!ACHTUNG!!! Wenn jemand Rechtschreib- oder Grammatikfehler findet, kann er sie behalten. Ich habe diesen Text nicht Korrektur gelesen. Deshalb bitte: Inhaltliche Fehler MELDEN!!! Ansonsten VIEL SPAß!

Mehr

Arbeitsblatt 5 EAD II NetBeans

Arbeitsblatt 5 EAD II NetBeans Arbeitsblatt 5 EAD II NetBeans Graphische Oberfläche für Uhrenanzeige mit NetBeans Für die Einführung in die Verwendung von NetBeans erstellen wir die graphische Oberfläche für die Uhr nun mit NetBeans.

Mehr

5. Das Java AWT (II) Components und Container

5. Das Java AWT (II) Components und Container 5. Das Java AWT (II) Components und Container OO-Graphics in Java Das Java AWT (II) 111 AWT Hierarchie (II) Checkbox Choice Object List Button Component Canvas Panel Applet Container ScrollPane Dialog

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

Benutzeroberflächen. Abstract Windowing Toolkit, Rahmen, Wächter, Ereignisbehandlung, Ausgabe, Menüs.

Benutzeroberflä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

Mehr

Grundzüge der Programmierung. Wiederverwendung VERERBUNG

Grundzüge der Programmierung. Wiederverwendung VERERBUNG Grundzüge der Programmierung Wiederverwendung VERERBUNG Inhalt dieser Einheit Syntax: Vererbung in Java Superklassen - Subklassen Konstruktorenaufruf in Subklassen super, abstract und final 2 Code-Reuse

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

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

3 Objektorientierte Konzepte in Java

3 Objektorientierte Konzepte in Java 3 Objektorientierte Konzepte in Java 3.1 Klassendeklarationen Fragen an die Klassendeklaration: Wie heißt die Klasse? Wer darf auf die Klasse und ihre Attribute/Methoden zugreifen? Ist die Klasse eine

Mehr

Kurs OPR. Objektorientierte Programmierung

Kurs OPR. Objektorientierte Programmierung Kurs OPR Objektorientierte Programmierung Lektion: 008-GUI-Komp., eigenst. Programme Zürcher Hochschule für Angewandte Wissenschaften Mitglied der Fachhochschule Zürich Version 1.4 Inhaltsverzeichnis 1

Mehr

Eclipse Tutorial.doc

Eclipse Tutorial.doc Berner Fachhochschule Hochschule für Technik und Informatik, HTI Fachbereich Elektro- und Kommunikationstechnik Labor für Technische Informatik Eclipse Tutorial 2005, HTI Burgdorf R. Weber Dateiname: Eclipse

Mehr

Eingabe von Texten. Vorlesung Software-Entwicklung / Folie 101

Eingabe von Texten. Vorlesung Software-Entwicklung / Folie 101 Eingabe von Texten SWE-101 Komponente TextField: einzeiliger, edierbarer Text Ereignisse: ActionEvent (wie bei Button) ausgelöst bei der Eingabe von Return einige Methoden (aus der Oberklasse TextComponent):

Mehr

Einführung in die Informatik - Teil 6b -

Einführung in die Informatik - Teil 6b - Eckart Modrow Java-Anwendungen mit dem JBuilder S. 1 Einführung in die Informatik - Teil 6b - Java-Anwendungen mit dem JBuilder Inhalt: 1. Anwendungen versus Applets 2. Die Arbeit mit IDEs 3. J++-Anwendungen

Mehr

Java: Vererbung. Teil 3: super() www.informatikzentrale.de

Java: Vererbung. Teil 3: super() www.informatikzentrale.de Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und

Mehr

Objekt-Orientierte Programmierung

Objekt-Orientierte Programmierung Objekt-Orientierte Programmierung Ein OO-Programm modelliert eine Anwendung als eine Welt von Objekten, die miteinander in Beziehung stehen ( später). Ein Objekt kann andere Objekte erzeugen. Ein Objekt

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

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 12 Grafische Benutzerschnittstellen... 12-2 12.1 Komponenten... 12-2 12.1.1 AWT und Swing... 12-2 12.1.2 Beispiel Hallo Welt!... 12-3 12.2 Ereignisverarbeitung... 12-6 12.3 Grafik... 12-10 12.3.1

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

3 Objektorientierte Konzepte in Java

3 Objektorientierte Konzepte in Java 3 Objektorientierte Konzepte in Java Bisherige Beobachtungen zu Objekten: werden in Klassen zusammengefasst besitzen Eigenschaften und Verhalten verbergen private Informationen werden geboren, leben und

Mehr

DHBW Karlsruhe, Vorlesung Programmieren, Events Musterlösung

DHBW Karlsruhe, Vorlesung Programmieren, Events Musterlösung DHBW Karlsruhe, Vorlesung Programmieren, Events Musterlösung Aufgabe Editor package BA.GUI.Swing; import java.awt.*; import java.awt.event.*; import java.io.*; import java.util.logging.level; import java.util.logging.logger;

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

Algorithmen und Programmierung II

Algorithmen und Programmierung II Algorithmen und Programmierung II Vererbung Prof. Dr. Margarita Esponda SS 2012 1 Imperative Grundbestandteile Parameterübergabe String-Klasse Array-Klasse Konzepte objektorientierter Programmierung Vererbung

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 15 Einstieg in die Informatik mit Java Ereignisverwaltung und Layout-Typen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 15 1 Ereignis-Verwaltung 2 Layout-Typen GridLayout

Mehr

Teil 1: Grundeigenschaften von Rechnern und Software

Teil 1: Grundeigenschaften von Rechnern und Software Blatt Nummer: 1 Teil 1: Grundeigenschaften von Rechnern und Software Aufgabe 1.1 [2P] Welcher fundamentale Unterschied besteht zwischen dem Zweck eines Computer von dem Zweck anderer Maschinen (etwa einer

Mehr

Java Desktop Anwendungen

Java Desktop Anwendungen 5 1 Java Desktop Anwendungen das Problem: Desktop-Anwendungen werden mit Hilfe der Swing- Bibliothek programmiert, aber die Swing-Bibliothek ist riesig und unübersichtlich es gab kein Programmiergerüst

Mehr

Teil 2: OOP und JAVA (Vorlesung 11)

Teil 2: OOP und JAVA (Vorlesung 11) Teil 2: OOP und JAVA (Vorlesung 11) Modul: Programmierung B-PRG Grundlagen der Programmierung II Prof. Dot.-Ing. Roberto Zicari Professur für Datenbanken und Informationssysteme (FB 12) 28.06.06 1 Teil

Mehr

$ java awt.main A # typische Dekodierung $ java -Dtrace=all awt.main A # alle Events $ java -Dtrace=none awt.main A # keine Dekodierung

$ java awt.main A # typische Dekodierung $ java -Dtrace=all awt.main A # alle Events $ java -Dtrace=none awt.main A # keine Dekodierung 111 Copyright 1996-1998 by Axel T. Schreiner. All Rights Reserved. Button [ Applet] Beispiel A dient zum Experimentieren mit Button- und Panel-Objekten. Button stammt von Component ab, stellt einen String

Mehr

GUI Programmierung mit GTK

GUI Programmierung mit GTK LinuxFocus article number 295 http://linuxfocus.org GUI Programmierung mit GTK by Özcan Güngör About the author: Ich benutze Linux seit 1997. Freiheit, Flexibilität, Open

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 41 Einstieg in die Informatik mit Java Vererbung Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 41 1 Überblick: Vererbung 2 Grundidee Vererbung 3 Verdeckte Variablen

Mehr

GUI Design. Universität Paderborn Prof. Dr. Stefan Böttcher. Java Swing und AWT

GUI Design. Universität Paderborn Prof. Dr. Stefan Böttcher. Java Swing und AWT GUI Design Java Swing und AWT 1 Gui Design Von Hand Mittels visuellem GUI Designer 2 Warum von Hand? Grundkonzepte erlernen Zum Verständnis des von GUI Designern generierten Codes unerlässlich GUI Designer

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

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Konstruktor, Statische Methoden Packages Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Initialisierung von Datenstrukturen

Mehr

Hochschule der Medien Prof. Uwe Schulz 14. Juli 2010 Klausur Informatik, EDV-Nr. 40301 Seite 1 von 5. Teil 2: Aufgaben

Hochschule der Medien Prof. Uwe Schulz 14. Juli 2010 Klausur Informatik, EDV-Nr. 40301 Seite 1 von 5. Teil 2: Aufgaben Hochschule der Medien Prof Uwe Schulz 14 Juli 2010 Klausur Informatik, EDV-Nr 40301 Seite 1 von 5 Name: Matr Nr: Teil 2: Aufgaben Hilfsmittel: alle außer tragbare Computer und Nachbar Bearbeitungszeit:

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

2A Basistechniken: Weitere Aufgaben

2A Basistechniken: Weitere Aufgaben 2A Basistechniken: Weitere Aufgaben 2A.3 Programmierung unter UNIX/Linux 1. Gegeben sind einige Ausschnitte von C-Programmen, die unter UNIX/Linux ausgeführt werden sollen. Beantworten Sie die zugehörigen

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 03: Wiederholung und Nutzereingaben Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Wiederholung Klassen, Objekte, Attribute und Methoden

Mehr

Beispiel: Zwischen der Oberklasse und der abgeleiteten Klasse besteht eine ist ein Beziehung. Eine abgeleitete Klasse stellt eine Spezialisierung der

Beispiel: Zwischen der Oberklasse und der abgeleiteten Klasse besteht eine ist ein Beziehung. Eine abgeleitete Klasse stellt eine Spezialisierung der Vererbung Vererbung ist ein Konzept der objektorientierten Programmierung,, die es ermöglicht neue Klassen von bereits vorhandenen Klassen abzuleiten. In einer abgeleiteten Klasse (subclass) muss nur spezifiziert

Mehr

Was passiert, wenn Button "Ok?" mit Maus angeklickt?

Was 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

Mehr

Programmieren II. Dr. Klaus Höppner. Hochschule Darmstadt WS 2006/2007

Programmieren II. Dr. Klaus Höppner. Hochschule Darmstadt WS 2006/2007 Programmieren II Dr. Klaus Höppner Hochschule Darmstadt WS 2006/2007 1 / 15 Einführung: Grafische Benutzeroberflächen 2 / 15 Einführung: GUI Fast alle Programme besitzen mittlerweile eine grafische Benutzeroberfläche

Mehr

Einführung in die Programmierung Blockkurs Java

Einführung in die Programmierung Blockkurs Java Michael Bader 19. 25. Februar 2003 Donnerstag Inhaltsübersicht Java pur die Java-Welt außerhalb von BlueJ Adressierung von Klassen und Paketen Java Applications Klassenmethoden und -variablen Ein- und

Mehr

Drucken soll nur das Panel, nicht der ganze Rahmen gedruckt werden.

Drucken soll nur das Panel, nicht der ganze Rahmen gedruckt werden. Kapitel 1 Drucken von Swing-Komponenten. Wir wollen eine einfache Methode zum Drucken einer Swing-Komponente vorstellen und daran den Mechanismus der Druckereinbindung in JAVA studieren. Anschließen wird

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

Mensch-Maschine-Interaktion

Mensch-Maschine-Interaktion Universität Dortmund, Fachbereich Informatik Peter Bollweg, OH16 E08, bollweg@ls7.cs.uni-dortmund.de, 6328 Constantin Timm, OH16 E06, timm@ls12.cs.uni-dortmund.de, 6144 Christian Asche Dortmund, 19. Oktober

Mehr

Grafikprogrammierung mit Java Teil 1/2

Grafikprogrammierung mit Java Teil 1/2 Grafikprogrammierung mit Java Teil 1/2 Martin Tischmann 15. Juni 2009 Inhaltsverzeichnis Das Abstract Windowing Toolkit Anlegen eines Fensters Die Methode paint Das grafische Koordinatensystem Schließen

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

public class Beispiel1 extends Frame {

public class Beispiel1 extends Frame { Das AWT (Abstract Window Toolkit) Menge von Klassen und Interfaces im Paket java.awt.* Wird zur Erzeugung grafischer Benuterzoberflächen (Graphical User Interface, GUI) verwendet. SWING (zu finden im paket

Mehr

Ab jetzt: Java ohne Kara

Ab jetzt: Java ohne Kara Java ohne Kara Ab jetzt: Java ohne Kara Ziel: Erfahrungen sammeln mit ersten Java Programmen JavaKara -> Java Ablauf in JavaKara: 1. Programm schreiben 2. Kompilieren 3. Programm starten Ablauf in Java

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

7. Objektorientierte Softwareentwicklung/3. Informatik II für Verkehrsingenieure

7. Objektorientierte Softwareentwicklung/3. Informatik II für Verkehrsingenieure 7. Objektorientierte Softwareentwicklung/3 Informatik II für Verkehrsingenieure Überblick FOLGENDE BEGRIFFE/PRINZIPIEN SOLLTEN BEKANNT SEIN Objekte Klasse Attribute Fähigkeiten ZIEL DER HEUTIGEN LEHRVERANSTALTUNG

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 (Fortsetzung) Layout-Manager Definition Ein Layout-Manager ist ein Objekt,

Mehr

Kapitel 8. Programmierkurs. Methoden. 8.1 Methoden

Kapitel 8. Programmierkurs. Methoden. 8.1 Methoden Kapitel 8 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Methoden Überladen von Methoden Der this-zeiger Konstruktoren Vererbung WS 07/08

Mehr

Vorlesung Informatik II

Vorlesung Informatik II Vorlesung Informatik II Universität Augsburg Wintersemester 2011/2012 Prof. Dr. Bernhard Bauer Folien von: Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 07. Java: GUI und Ereignisbehandlung Teil

Mehr

Session 1: Classes and Applets

Session 1: Classes and Applets Session 1: Classes and Applets Literature Sprechen Sie Java, ISBN 3-89864-117-1, dpunkt deutsch Java für Studenten, ISBN 3-8273-7045-0, PearsonStudium deutsch Java in a Nutshell, ISBN: 0-59600-283-1, O'Reilly

Mehr

Klassen in Java. Klassen

Klassen in Java. Klassen Klassen in Java Klassen Klassen beschreiben Objekte, die abstakte oder konkrete Sachverhalte modellieren. Objekte sind durch einen Status gekennzeichnet (State). Der Status eines Objektes ergibt sich aus

Mehr

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

Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.2 Inhalt 1. Toolbar 1. JToolBar 2. Menü 1. JMenuBar 2. JMenu 3. JMenuItem 4. KeyStroke 5. Beispiel JMenuDemo1 6. JCheckBoxMenuItem 7. JRadioButtonMenuItem 8. Beispiel JMenuDemo2 9. JPopupMenu 10. Beispiel

Mehr

Kapitel 19: Klassen und Unterklassen

Kapitel 19: Klassen und Unterklassen Kapitel 19: Klassen und Unterklassen Felix Freiling Lehrstuhl für Praktische Informatik 1 Universität Mannheim Vorlesung Praktische Informatik I im Herbstsemester 2009 Folien nach einer Vorlage von H.-Peter

Mehr

Tutorial04: Swing: Erstellen eines JFrames mit einem JSplitPane

Tutorial04: Swing: Erstellen eines JFrames mit einem JSplitPane Hochschule Harz Programmierung2 Tutorial 04: FB Automatisierung und Informatik Dipl.-Inf., Dipl.-Ing. (FH) M. Wilhelm Programmierung 2 für MI / WI Thema: Swing, JSplitPane und I/O Versuchsziele Kenntnisse

Mehr

Präsentation Interfaces

Präsentation Interfaces Einführung in Java Präsentation Interfaces Nozar Delassaei Marvi Inhalt 1. Erinnerung Klasse Objekte Beispiel Klasse Abstrakte Klasse Beispiel Abstrakte Klasse Mehrfachvererbung-1 Mehrfachvererbung-2 2.

Mehr