Vortrag - Kenny Schlör Applets Einführung in die Appletprogrammierung.

Slides:



Advertisements
Ähnliche Präsentationen
1 Fraktale Julia-Mengen die Mandelbrotmenge komplexe Abbildungen realisiert als JAVA-Applet.
Advertisements

DVG Dateien Dateien. DVG Dateien 2 Die Klasse File Die Klasse File stellt die Verbindung zwischen dem Filesystem des Rechners und dem.
PKJ 2005/1 Stefan Dissmann Vorwoche - Klasse public class Studierende { private String name, vorname, studiengang; private int matNr, semester; private.
Seminar Internetdienste Web 2.0 und Rich Internet Applications (RIA) JavaFX Rainer Scholz.
Progwerkstatt JAVA Klasse, Objekte, Konstruktoren, Methoden
Prof. Dr.-Ing. habil. B. Steinbach - Informatik / Softwaretechnologie und Programmierungstechnik - Institut für Informatik Verteilte Software - Java -
Ausnahmen HS Merseburg (FH) WS 06/07.
Java: Objektorientierte Programmierung
Java: Dynamische Datentypen
Java: Grundlagen der Sprache
Java: Grundlagen der Objektorientierung
Wie überwacht man Objekte im "Alltag" ?. Indem man "Wanzen" an diese anbringt.
Ein Beispiel in Java.
Klassenvariable. Da man für jede Kuh bzw. jede Henne auf dem Markt den gleichen Preis für ein Liter Milch, bzw. den gleichen Preis für ein Ei bekommt,
Konstruktoren.
Polymorphie (Vielgestaltigkeit)
Polymorphie (Vielgestaltigkeit)
Benötigte Applets Startseite: in HTML-Format Applet auf der Startseite Das Applet, das auf der Startseite geladen wird, wird die vier Buttons und die eine.
AWT – Detailbetrachtung Java 3D – Seminar im Wintersemester 2002/2003 Christian Schneider.
Java-Kurs Grafik Julian Drerup.
Java-Kurs - 2. Übung Entwicklungsumgebung Struktur von Programmen
Programmieren mit JAVA
Programmieren mit JAVA
Programmieren mit JAVA Teil V. Grafikausgabe mit JAVA, das AWT Java wurde von Anfang an mit dem Anspruch entwickelt, ein vielseitiges, aber einfach zu.
PRJ 2007/1 Stefan Dissmann Motivation Problem: gleiche Datenstrukturen werden für verschiedene Objekte gebraucht: z.B. Listen von Studierenden, Kunden,
PKJ 2005/1 Stefan Dissmann Ausblick Es fehlen noch: Möglichkeiten zum Strukturieren größerer Programme Umgang mit variabler Zahl von Elementen Umgang mit.
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
Zusammenfassung Vorwoche
1DVG3 - Eventbehandlung Eventbehandlung. DVG3 - Eventbehandlung 2 Events Events sind externe Ereignisse, die parallel zum normalen Programmablauf auftreten.
Packages Vortrag : Cornelia Hardt 23. November 1999.
1DVG3 - Paint Paint ein Zeichenprogramm. DVG3 - Paint 2 Paint – ein Zeichenprogramm.
DVG1 - Applets1 Applets. DVG1 - Applets2 Die Klasse Applet n Applets sind Grafikobjekte, die unter Steuerung eines anderen Programms (z.B. eines Browsers,
1DVG3 - anonyme Klassen Anonyme Klassen. DVG3 - anonyme Klassen 2 Syntax new BasisKlasse(Parameterliste) { Modifikationen und Erweiterungen der Basisklasse.
DVG Kommentare1 Kommentare. DVG Kommentare 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht.
DVG Einführung in Java1 Einführung in JAVA.
DVG Methoden 1 Methoden. 2 int dezi = Integer.parseInt(args[0]); boolean vz = (dezi>=0); dezi = Math.abs(dezi); String Bin = ""; do { } while.
07-GraphischeObjekte Graphische Objekte in EMMA301Paint.
DVG Klassen und Objekte
EDV Parallelprogrammierung1 Parallelprogrammierung mit JAVA.
03 - Paint Das Zeichenprogramm EMMA Paint2 Aufgabenstellung Entwicklung eines ausschließlich in JAVA programmierten Graphikprogrammes. Vergleichsprodukte:
DVG Kommentare 1 Kommentare. 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht bis zum Ende der Zeile.
Marcus Haller & René Schulze
FH-Hof HTML - Einführung Richard Göbel. FH-Hof Komponenten des World Wide Webs WWW Browser HyperText Transfer Protocol (HTTP) via Internet WWW Server.
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
AWT und JFC Abstract Windowing Toolkit
Java ohne Kara. Java ohne Kara Ab jetzt: Java ohne Kara Ziel: Erfahrungen sammeln mit ersten Java Programmen.
Applets Java für’s Web.
CuP - Java Elfte Vorlesung Montag, 11. November 2002.
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Objektorientiertes Konstruieren
Variablenkonzept Klassisch, in Java Basistyp
Unterprogramme in JAVA
Wilfried Imrich CuP - Java Erste Vorlesung Entspricht ungefähr Kapitel 1.1 des Skriptums Wilfried Imrich Montanuniversität Leoben Freitag, 4. Oktober 2002.
CuP - Java Vierte Vorlesung Entspricht ungefähr Kapitel 2.1 des Skriptums Montag, 14. Oktober 2002.
PI Burgenland Java und JavaScript 1. Teil
3. Beschreibung von Abläufen durch Algorithmen 3.4 Zufall
Java-Kurs Übung Benutzeroberflächen und Graphik
Java-Kurs Übung Benutzeroberflächen und Graphik Frames (Fenster)
Java-Applets und URLs APP Philip Graf, Andreas Bößl.
Java-Kurs - 6. Übung Besprechung der Hausaufgabe
Institut für Kartographie und Geoinformation Prof. Dr. L. Plümer, Dipl.-Ing. D. Dörschlag, Dr. G. Gröger Einführung in die Programmierung mit Java 13.
Einführung in die OOP in Java
, Dr. Wolfram Amme, Softwareentwicklung in Java, FSU Jena, WS 2005/06 1 Beispiel class SpreadSheet { int cellA1, cellA2, cellA3; synchronized.
Java Programme nur ein bisschen objektorientiert.
Tutorium Software-Engineering SS14 Florian Manghofer.
Java-Kurs Übung Grafik in Java - das Abstract Windowing Toolkit
Java-Kurs Übung Klassen und Objekte: Vererbung (Fortsetzung)
Grundkurs Informatik 11-13
Es gibt Klassen, die mit der Entwicklungsumgebung ausgeliefert werden
9. Vererbung und Polymorphie
 Präsentation transkript:

Vortrag - Kenny Schlör Applets Einführung in die Appletprogrammierung

Vortrag - Kenny Schlör Applets und Applikation: Die Unterschiede 4 Es gibt zwei unterschiedliche Möglichkeiten,Java-Programme laufen zu lassen,und zwar –entweder als ein selbständiges Programm(Applikation) dieses wird mit einem Java-Intepreten ausgefürt –oder von einem WWW-Browser aus (ein sogenanntes Applet) z.B. durch:Netscape Navigator, Microsoft Internet Explorer und Suns HotJava.Zusätzlich können Applets mit dem Applet-Viewer,der im JDK enthalten ist, angezeigt werden. 4 Um ein Applet auszuführen, muß es in eine Webseite eingefügt werden. Dies geschieht mit Hilfe von HTML-Tags.

Vortrag - Kenny Schlör Applets und Applikation: Die Unterschiede 4 Durch die Verbindung zum Internet mittels Applet-Programmierung hat sich Java sehr stark durchsetzten 4 Es ist möglich das ein einziges Programm Applikation und Applet zugleich beinhaltet.Die Vorgehensweise zum erstellen von Applets und Applikations stehen nicht im Konflikt zueinander.Es werden jeweils die Merkmale des anderen ignoriert.

Vortrag - Kenny Schlör Sicherheit von Applets 4 Es gelten folgende Vereinbarungen bei Netscape und dem Microsoft Internet Explorer 4 Es gibt aus Sicherheitsgründen Applets-Einschränkungen –Es ist nicht möglich,daß Applets im Dateisystem des Benutzers lesen und schreiben. –Applets können nur mit dem Internet-Server kommunizieren, von dem die Webseite stammt,die das Applet enthält. –Applets können keine Programme auf dem System des Benutzters ausführen. –Applets können keine Programme auf der lokalen Plattform laden, einschließlich gemeinsam genutzter Bibliotheken wie DLLs.

Vortrag - Kenny Schlör Sicherheit von Applets 4 Bei anderen Browser gibt es flexiblere Vereinbarung in Bezug auf Sicherheit durch eigene Konfiguration % Sicherheit kann nicht garantiert werden. Genauere Infos findet man unter dem Begriff hostile applets im Internet.

Vortrag - Kenny Schlör DieKlasse Applet 4 Beim Erstellen eines Applets werden an verschiedenen Punkten der Ausführung einige Methoden verwendet.Im Vergeich zu einer Applikation,die für eine Initialisierung die main-Methode zum aufruf verwendet. 4 Alle Applets habe als Superklassen die Klasse Applet aus dem Package java.Applet. import java.awt.*; // stellt die Graphische Oberfläche import java.applet.*; // stellt die Methoden von Applet public class yourApplet extends Applet { // Code des Applet } 4 Jede Applethauptklasse muß als public declariert werden,da die Klasse Applet selbst public ist.

Vortrag - Kenny Schlör Die Methoden der Klasse Applet: init,destroy Initialisieren : init () sie tritt auf,wenn ein Applet geladen wird.Sie umfaßt das Erzeugen von Objekten, Laden von Bildern und Schriften und Setzten von Parameters.Die Methode ist vergleichbar mit einem Konstruktor. public void init () { //Code der Methode } Destroy: destroy() das Applet kann hinter sich aufräumen, bevor der Browser beendet wird,z.B. um andere laufende Objekte freizugeben.Im allgemeinen braucht destroy() nicht überschrieben werden, sofern Ressourcen nicht freigegeben werden müssen.Die Methode finalize() ist für Apples nicht gebrauchbar. public void destroy () { //Code der Methode }

Vortrag - Kenny Schlör Die Methoden der Klasse Applet: Starten und Stoppen Starten und Stoppen: start(); stop() Das Starten unterscheidet sich vom Initialisieren,denn während seines Lebenszyklus kann ein Applet mehrmals gestartet werden,während eine Initialisierung nur einmal stattfindet. Beispiel:Das Applet gestoppt durch das Benutzen eines Links zu einer anderen Seite, beim erneuten Aufruf der Seite wird das Applet vom neuen gestartet. public void start/stop () { //Code der Methode }

Vortrag - Kenny Schlör Schreiben einer Webseite und Anwenden des Appletviewer 4 Um unser Programm ablaufen zu lasse, müssen wir eine Webseite erstellen in der das Applet eingebettet wird.Mit Hilfe eines Editors erzeugen wir uns eine Datei.html –Beispiel: Simple Web Page

Vortrag - Kenny Schlör HTML-Tags &Appletviewer HTML-Tagst – und ist beliebig wählbar und steht im Kopf der Webseite. –Das Wort gibt die Sendung eines Applet an den Browser an (und die Beschreibung endet mit ). –Das Wort CODE gibt den Namen der Datei an(wie im Beispiel: Simple.class). –Die Wörter width (Breite) und heigth (Höhe) geben die Größe des Appletsfensters an. Gemessen wird in Pixel. 4 Der Appletviewer ist ein Werkzeug zum Testen von Applet. Er ist eine alternative zu den Browsers. –appletviewer Simple.html

Vortrag - Kenny Schlör Beispiel: import java.awt.*; import java.applet.*; public class AppuAppl extends Applet { public void paint(Graphics g) { g.drawString("Das ist das Applet", 100,200); } public static void main (String [] args) { Applikation r = new Applikation(); f.setSize(600,400); f.show(); } }

Vortrag - Kenny Schlör class Applikation extends Frame { public void paint(Graphics g) { g.drawString("Das ist die Applikation", 100,200); }

Vortrag - Kenny Schlör Info-Methoden der Klasse Applet Die Methode getAppletInfo() ist eine Möglichkeit Informationen über das Applet zur Verfügung zu stellen. Der Appletviewer ruft die Info auf. Eine zweite Methode getParameterInfo() der Appletklasse wird benutzt, um Informationen über die Aufrufparameter auszugeben. Die Methode liefert ein mehrdimensonales Feld von Strings. Beispiel: public String getAppletInfo() { return Name.....\r\n + Autor:....; } public String [ ] [ ] getParameterInfo() { {Name_PARAM1,Typ,Bedeutung},...{Name_PARAM2,... } }; return info;

Vortrag - Kenny Schlör Parmeterübergaben 4 Beispiel: Es werden hier zwei Parameter übergeben.Dafür wird das Tag verwendet. Mit Name wird der Parametername und mit value sein übergebener Wert festgelegt. Bei Applets muß jeder Parameter explizit mittels getParameter() ermittelt und einer Variablen zugewiesen werden.

Vortrag - Kenny Schlör Weiter zum Beispiel: import java.applet.*; import java.awt.*; public class Bsp extends applet { private String m_text =Hier erscheint Text.; private int _zahl =0; private final String PARAM_text =text; //(1) private final String PARAM_zahl=zahl; public void init() { Sting param; // (2) param = getParameter(PARAM_text); // (3) if (param!=null) m_text = param; // (4)

Vortrag - Kenny Schlör param = getParameter(PARAM_zahl); if (param !=null) m_zahl=Integer.parseInt(param); //(5) } public void paint (Graphics g) { g.drawString(m_text,10,20); for (int i=0;i < m_zahl ;i++ ) { int a =(int)(200.0 *Math.random()); int b =(int)(200.0 *Math.random()); int c =(int)(200.0 *Math.random()); int d =(int)(200.0 *Math.random()); g.drawLine( a, b, c, d); } } }

Vortrag - Kenny Schlör Parameterübergabe 4 (1): Die Parameter werden namentlich und nicht in einer bestimmten Reihenfolge übergeben.Es wird eine konstante(final) Variable definiert.Der Vorteil ist,das getParameterInfo diese Variable benutzten kann, um die Parameternamen auszugeben. 4 (2):Die Parameter werden als Zeichenkette übergeben,dafür wird eine Hilfsvariable (param),zum Zwischenspeichern.Der Inhalt wird dann in den jeweiligen Typ umgewandelt. 4 (3):Hier erfolgt die Parameterübergabe.Die Methode getParameter benutzt ein Zeichenkettenargument PARAM_text um in der HTML- Datei die -Marke mit dem passenden Namen zu finden. 4 (4):Es muß nach null getestet werden, da überprüft werden muß op das HTML-Dokument einen Wert festlegt. 4 (5):Bei true wird zugewiesen. 4 (6):Integer.parseInt(variable) wandelt einen Stirng in eine Ganzzahl um.

Vortrag - Kenny Schlör Ereignisse Appletts verarbeiten Ereignisse.Jedesmal wenn die Maus bewegt wird,eine Taste gedrückt wird,das Applet verdeckt wird usw.., wird ein Objekt der Klasse Event erzeugt.Das Objekt wird durch seine Attribute genauer beschrieben.Alle Attribute sind public Immer wenn ein Ereignis auftritt wird eine Methode von Applet aufgerufen,die von Component geerbt wurde.Es ist die handleEvent. public boolean handleEvent(Event evt) 4 Bei der Rückgabe wird bestimmt ob das Ereignis verarbeitet wurde. Die Methode ist die Drehscheibe der Ereignisverarbeitung. Sie überreicht das Objekt an spezielle Handler weiter.Die Handler sind alle public und geben einen boolean-Wert zurück.

Vortrag - Kenny Schlör Speziele Handler 4 public boolean gotFocus(Event evt,Object what) Erhalt des Eingabefokus 4 public boolean lostFocus(Event evt,Object what) Verlust des Eingabefokus 4 public boolean mouseEnter(Event evt,int x,int y) Maus tritt ins Applet ein. 4 public void mouseExit(Event evt,int x,int y) Maus ist außerhalb des Applets 4 public boolean mouseDown(Event evt,int x,int y) Maustaste wird gedrückt 4 public boolean mouseDrag(Event evt,int x,int y) Maus wird gezogen

Vortrag - Kenny Schlör Spezielle Handler 4 public boolean mouseUp(Event evt,int x,int y) Maus wurde losgelassen 4 public boolean mouseMove(Event evt,int x, int y) Maus wird bewegt 4 keyDown(Event evt,int key) Tastaturtaste wurde gedrückt 4 keyUp(Event evt,int key) Tastaturtaste wurde losgelassen 4 action(Event evt,Object what) fast alles andere

Vortrag - Kenny Schlör import java.awt.*; import java.applet.*; public class Fokus extends Applet { private String m_text =Anfang"; private int m_start=0; private int m_stop=0; private String msg=null; public void paint (Graphics g) { g.drawString (m_text,100,100); }

Vortrag - Kenny Schlör public boolean gotFocus (Event evt,Object what) { setBackground(Color.green); m_text="Hallo!"; repaint(); return true; } public boolean lostFocus(Event evt,Object what) { setBackground(Color.yellow); m_text="Tschau!"; repaint(); return true; } }

Vortrag - Kenny Schlör Bemerkungen und andere Methoden 4 Egal ob das Applet den Fokus hat oder nicht,jedesmal wenn der Coursor über die Appletfläche läuft wird ein Ereignisobjekt übergeben. 4 repaint() repaint fordert eine Neuzeichnung über die paint-Methode 4 repaint (int x, int y,int width int height) Die Parameter von repaint geben den zu aktualisierenden Bereich an.