Einstieg in die Informatik mit Java

Ähnliche Dokumente
Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java

Praktikum 4: Grafiken und Ereignisse

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java

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

Einstieg in die Informatik mit Java

Vererbung, Polymorphie

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java

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

Einstieg in die Informatik mit Java

Applets Pro r g o r g a r m a mier e e r n e n mit Jav a a Einf n üh ü r h u r n u g n g in n App p l p et e s Ya Y na N o N rina

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

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

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

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java

V by WBR1/BFH-TI 2011 by MOU2/BFH-TI

Ab jetzt: Java ohne Kara

Einstieg in die Informatik mit Java

Applets Belebung von Webseiten. Dipl.-Ing. Wolfgang Beer

Objektorientierte Programmierung OOP Objektorientierte Programmierung (OOP) mit Java

Methoden. Gerd Bohlender. Einstieg in die Informatik mit Java, Vorlesung vom

Einstieg in die Informatik mit Java

Grundlagen der Programmierung APPLETS

Einstieg in die Informatik mit Java

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

Objektorientierte Programmierung und Klassen

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java

Applications Applets (eingeschränkte Rechte)

Neben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter

Java - AWT Basispraktikum SystemArchitektur WS 2008/ Atanas Dimitrov

Probeklausur Informatik 2 Sommersemester 2013

Einstieg in die Informatik mit Java

Repetitorium Informatik (Java)

1. Erzeugen eines neuen leeren Applets

Der Ball kann angezeigt werden: anzeigen( ) {... } Der Ball kann z.b. seine Größe verändern: groesseaendern(int veraenderung) {... } usw.

8.6 Visualisierung der Sortieralgorithmen

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

Grundlagen der Informatik für Ingenieure I

Klassenvariablen, Klassenmethoden

Workshop zu Folge 9.3 Überarbeitete Version vom Mai 2016

Implementieren von Klassen

Praktikum: Einstieg: Arbeitsplatz, JCreator

Einstieg in die Informatik mit Java

GUI Programmierung in Java

Webentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo

Teil 5 - Java. Programmstruktur Operatoren Schlüsselwörter Datentypen

Programmieren II. Java-Applets. Heusch 17 Ratz 4. Institut für Angewandte Informatik

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

FH D. Objektorientierte Programmierung in Java FH D FH D. Prof. Dr. Ing. André Stuhlsatz. Wiederholung: Gerüstbeispiel. Vererbungshierarchie: Typ 0

Einstieg in die Informatik mit Java

Kapitel 19: Klassen und Unterklassen

Hüllklassen. Gerd Bohlender. 25. Juni Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 4

Java Kurzreferenz Für Fortgeschrittene

Algorithmen und Datenstrukturen 06

Kapitel X - Zeichnen mit Java2D

Der Rumpf. Titel Seite 3

Applets I. Grundlagen der g Applet-Programmierung

Einführung Servlets. JEE Vorlesung Teil 2. Ralf Gitzel

Klassen mit Instanzmethoden

Transkript:

1 / 18 Einstieg in die Informatik mit Java Applets Gerd Bohlender Institut für Angewandte und Numerische Mathematik

Gliederung 2 / 18 1 Einführung 2 Sicherheits-Maßnahmen 3 Ereignisgesteuerte Programmierung 4 Ereignisse

Gliederung 3 / 18 1 Einführung 2 Sicherheits-Maßnahmen 3 Ereignisgesteuerte Programmierung 4 Ereignisse

Einführung 4 / 18 Applets sind spezielle Javaprogramme mit graphischer Ein- und Ausgabe. Sie werden wie Texte oder Graphiken meist über das Internet verschickt und innerhalb eines Webbrowsers (z.b. Firefox, Opera oder Internet Explorer) lokal ausgeführt. Es handelt sich also, wie der Name Applet schon vermuten lässt, nicht um komplette Anwendungsprogamme, sondern um Programmstücke, die für eine bestimmte Teilaufgabe zuständig sind.

Gliederung 5 / 18 1 Einführung 2 Sicherheits-Maßnahmen 3 Ereignisgesteuerte Programmierung 4 Ereignisse

6 / 18 Sicherheits-Maßnahmen Es erfolgt kein Zugriff auf lokale Dateien, außer wenn ein Verzeichnis ausdrücklich freigegeben ist. Daten werden nur mit dem Server ausgetauscht, von dem das Applet geladen wurde. Informationen an Dritte werden nicht versendet. Applets können keine Programme usw. starten. Achtung Trotzdem gibt es Sicherheitslücken! Applets können nach Beenden des Browsers weiterlaufen, Internetprotokolle können ausgespäht werden usw.

Gliederung 7 / 18 1 Einführung 2 Sicherheits-Maßnahmen 3 Ereignisgesteuerte Programmierung 4 Ereignisse

Ereignisgesteuerte Programmierung 8 / 18 Applets besitzen kein Hauptprogramm main. Existiert es trotzdem, so wird es ignoriert. Methoden werden durch Ereignisse ausgelöst, das Hauptprogamm ist nun Windows bzw. der Web Browser. Klassische prozedurale Programmierung Hauptprogramm Unterprogramm Unterprogramm Aufruf Aufruf

Ereignisgesteuerte Programmierung 9 / 18 Ereignisgesteuerte Programmierung unter (X /MS ) Windows Windows Methode Methode Methode Methode Methode Spezielle Methoden, die auf spezielle Ereignisse reagieren. Andere Methoden. Achtung Methoden eines Applets rufen sich i.allg. nicht explizit gegenseitig auf!

Gliederung 10 / 18 1 Einführung 2 Sicherheits-Maßnahmen 3 Ereignisgesteuerte Programmierung 4 Ereignisse

11 / 18 Ereignisse Die Klasse Applet enthält eine Reihe von Methoden, die bei bestimmten Ereignissen automatisch aufgerufen werden. Der Lebenszyklus eines Applets sieht folgendermaßen aus. Lebenszyklus eines Applets init() initialisiert start() läuft stop() gestoppt destroy() start()

12 / 18 Ereignisse Ereignisse und aufgerufene Methoden Ereignisse Aufgerufene Methode (Neu-) Laden des Applet public void init() {...} (Neu-) Starten des Applets (nach public void start() {...} Stop) Zurückwechseln zur Webseite (nach Wechsel auf andere Seite) Verlassen der Webseite, Ver- public void stop() {...} kleinerung des Browsers zum Icon Beenden des Browsers, Entfernung public void destroy() {...} des Applets wegen Speichermangels Neuzeichnen einer Komponente public void paint(graphics g) {...}

13 / 18 Ereignisse Beispiele Ereignisse, die einen Aufruf der Methode paint nach sich ziehen: Initialisierung des Applets, erneute Anzeige des Fensters, expliziter Aufruf im Quelltext. Diese Methoden sind bereits in der Klasse Applet definiert, enthalten dort aber noch keinen Code. Damit diese die gewünschte Funktionalität besitzen, müssen die Methoden in einer selbstdefinierten Subklasse überschrieben werden. Üblicherweise werden in der Methode init nur einige Initialisierungen vorgenommen und in der Methode paint die eigentliche Graphik-Ausgabe implementiert.

14 / 18 Ereignisse Einige wenige Methoden zur graphischen Ausgabe in einem Applet sind in der Tabelle auf der nächsten Folie aufgelistet, eine ausführliche Beschreibung befindet sich in der Dokumentation zum JDK. Achtung Alle Methoden werden als Komponenten des Parameters g aufgerufen! JDK Dokumentation http://java.sun.com/javase/6/docs/

Ereignisse Methoden zur Ausgabe in einem Applet Methode Wirkung drawstring(s,x,y) gibt Zeichenkette s aus, Bezugspunkt (x,y) ist links unten. drawrect(x y,b,h) gibt Rechteck mit Breite b+1 und Höhe h+1 aus, Bezugspunkt (x, y) ist links oben. fillrect(x,y,b,h) wie drawrect, Rechteck wird zusätzlich mit Farbe gefüllt. drawline(x1,y1,x2,y2) zeichnet eine Linie von (x1,y1) nach (x2, y2) setcolor(c) wählt Farbe c für nächste Ausgaben aus. Achtung c ist vom Typ Color. Instanzen der Klasse Color können beim Aufruf des Konstruktors entweder durch Angabe von int Werten im Bereich 0 bis einschließlich 255 oder durch Angabe von drei float Werten im Bereich von 0 bis einschließlich 1 gebildet werden! Desweiteren existieren die gebräuchlichsten Farben als Konstanten! 15 / 18

Ereignisse 16 / 18 Beispiel Color c1 = new Color (100, 20, 210); Color c2 = new Color ( 0. 2 f, 0.4 f, 0.3 f ) ; Color c3 = Color. green ; In Java laufen die Bildschirmkoordinaten in Pixeln von links nach rechts bzw. von oben nach unten. Die Ausgabe: g. drawstring ( Hallo, x, y ) ; erscheint damit wie folgt auf dem Bildschirm: Achtung 0 0 y Achse Hallo y x x Achse Bei Wahl von y=0 bleibt diese Ausgabe unsichtbar, da der Text oberhalb des oberen Bildschirmrandes ausgegeben wird!

17 / 18 Ereignisse Beispiel: Applet und zugehörige html-seite import java. awt. Graphics ; public class HalloWeltApp extends java. a p p l e t. Applet { public void p a i n t ( Graphics g ) { g. drawstring ( Hallo Welt!, 40, 2 0 ) ; } } <HTML> <Applet Code="HalloWeltApp.class" Width=210 Height=50> </Applet> </HTML> Achtung HTML unterscheidet nicht zwischen Groß- und Kleinschreibung von Schlüsselwörtern! Dies gilt jedoch nicht für den Namen des Applets!

18 / 18 Ereignisse Der Aufruf der html Seite erfolgt mit dem Programm appletviewer oder einem Webbrowser. Das Paket awt bietet zusätzlich: Windows, Menus, Controls (z.b. Buttons, Scrollbars, Textfields usw.). Applets werden i.allg. durch Ereignisse (Mausklicks, Mausbewegungen, Texteingaben usw.) gesteuert.