Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
1 Einleitung
2 Webbrowser
3 JavaScript einbauen
4 Programmieren mit JavaScript
5 Datum
6 Zufall
7 Browserinformationen
8 Fenster
9 Formulare
10 Frames und Iframes
11 Grafiken
12 Cookies
13 Objekte und Arrays
14 Ereignisbehandlung
15 Fehlerbehandlung
16 DOM
17 DHTML und CSS
18 AJAX
19 XML
20 Web Services
21 AJAX-Frameworks
22 Plugins
23 Multimedia
24 Java
25 Serverseitige Technologien
26 JavaScript goes .NET
27 Code schützen
28 Top Secret: Passwortschutz
29 Signierte Skripte
30 JavaScript und Sicherheit
31 Navigation
32 Warenkorb
33 JavaScript-Bibliotheken
34 Referenz
35 Quellen im Web
36 Die Zukunft von JavaScript
Index
Download: - ZIP, ca. 9,2 MB
Buch bestellen
Ihre Meinung?
<< zurück | Galileo Computing / <openbook> / JavaScript und AJAX | vor >>
JavaScript und AJAX von Christian Wenz Das umfassende Handbuch
JavaScript und AJAX 839 S., mit DVD, 39,90 Euro Galileo Computing ISBN 3-89842-859-1 |
| Kapitel 24 Java
|  | 24.1 Allgemeines
|  |  | 24.1.1 Wie funktioniert Java?
|  |  | 24.1.2 Kurzeinführung in Java
|  | 24.2 Java und das WWW
|  |  | 24.2.1 Ein Beispiel-Applet
|  |  | 24.2.2 HTML-Integration
|  | 24.3 Java ohne Applet
|  |  | 24.3.1 Exemplarische Java-Objekte
|  |  | 24.3.2 Blackjack
|  |  | 24.3.3 Karten initialisieren
|  |  | 24.3.4 Karten mischen
## 24.2 Java und das WWW Um ein Java-Programm im Browser betrachten zu können, muss es sich um ein so genanntes Applet handeln. Dadurch ändert sich der schematische Aufbau ein wenig. Die genauen Details sollen uns aber nicht interessieren. Auf der DVD zu diesem Buch finden Sie das kompilierte Applet, und Sie können es auch direkt ausprobieren. ### 24.2.1 Ein Beispiel-Applet Das folgende Applet wird in diesem Kapitel als Beispiel verwendet. Es zeichnet zu Anfang einen roten Kreis, denn die Methode paint() wird beim Laden des Applets aufgerufen. Außerdem gibt es noch eine Methode auswahl(), die anscheinend ein paar Variablen des Applets verändert und dann wieder paint() aufruft. Wenn Sie das Ganze selbst ausprobieren wollen, müssen Sie den Java-Quelltext unter demselben Namen wie die Klasse abspeichern. Letztere heißt ball, also wird der Quelltext unter ball.java abgespeichert.
    import java.applet.*;
    import java.awt.*;
    public class ball extends Applet{
       private int radius = 100;
       private Color farbe = Color.red;
       public void paint(Graphics g){
          g.setColor(Color.white);
          g.fillRect(0, 0, 449, 449);
          g.setColor(farbe);
          g.fillOval(225-radius, 225-radius, 2*radius-1,
          2*radius-1);
       }
       public void auswahl(int neuer_radius, String
       farbcode){
          this.radius = neuer_radius;
             if (farbcode.equals("rot"))
                {this.farbe=Color.red;} else
             if (farbcode.equals("blau"))
                {this.farbe = Color.blue;} else
             if (farbcode.equals("gruen"))
                {this.farbe = Color.green;} else
                   this.farbe = Color.black;
          paint(getGraphics());
       }
    }
### 24.2.2 HTML-Integration Das Ziel dieses Beispiels ist, mit JavaScript dieses Applet anzusteuern. Dazu soll folgendes HTML-Grundgerüst als Basis dienen. In einem Formular kann man den Radius des Kreises eingeben und via Radiobutton die Farbe des Kreises auswählen.
    <html>
    <head>
    <title>Java und JavaScript</title>
    <script "text/javascript"><!--
    function java(f) {
       if (navigator.javaEnabled()) {
          var radius = parseInt(f.radius.value);
          if (isNaN(radius) || radius>200 || radius<1) {
             radius = 200;
          }
          var farbe = f.farbe[0].checked ? "rot" :
             (f.farbe[1].checked ? "blau" : "gruen");
          document.ball.auswahl(radius, farbe);
       } else {
          alert("Bedaure, bei Ihrem Browser ist Java deaktiviert");
       }
    }
    //--></script>
    </head>
    <body>
    <h1>Java und JavaScript</h1>
    <applet code="ball.class" name="ball" width="450" height="450">
       Ihr Browser unterstützt kein Java!
    </applet>
    <form>
    Radius (von 1 bis 200): <input type="text" name="radius" size="3" />
    <br />
    Farbe:
     <input type="radio" name="farbe" value="rot" /> rot -
     <input type="radio" name="farbe" value="blau" /> blau -
     <input type="radio" name="farbe" value="gruen" /> grün<br>
    <input type="button" value="Zeichnen" onclick="java(this.form);" />
    </form>
    </body>
    </html>
Hier klicken, um das Bild zu Vergrößern Abbildung 24.1 Java-Applets mit JavaScript steuern Nüchtern analysiert, erledigt die Funktion java() Folgendes: Zuerst wird navigator.javaEnabled() abgefragt. Diese Methode gibt an, ob der Benutzer im Browser Java aktiviert hat. Ein Nebeneffekt dieser Abfrage ist, dass die Java Virtual Machine gestartet wird, sofern das noch nicht geschehen ist. Das dauert oft eine Weile. In diesem Fall fällt das aber nicht ins Gewicht, da aufgrund des Applets innerhalb der HTML-Seite die Virtual Machine ohnehin schon gestartet worden ist. Als Nächstes liest die Funktion java() die Formularwerte ein und wandelt die Eingabe im Radius-Eingabefeld in eine Zahl zwischen 1 und 200 um. Die Umwandlung der Zeichenkette in eine Zahl ist prinzipiell gar nicht nötig, das geschieht automatisch. Allerdings musste ja noch der Radius gegebenenfalls innerhalb des Intervalls von 1 bis 200 untergebracht werden. Die interessanteste Zeile der Funktion ist:
    document.ball.auswahl(radius, farbe);
Mit document.ball wird auf das Applet in der HTML-Seite zugegriffen, denn dieses hat das name-Attribut ball. Mit document.ball.auswahl() greifen Sie also auf die Methode auswahl() im Applet zu. Generell gilt, dass man mit JavaScript auf alle Methoden des Applets zugreifen kann, sofern sie als public deklariert worden sind. Den Rest erledigt in diesem Beispiel das Applet. Die entsprechenden Parameter werden verändert, und der Kreis wird neu gezeichnet. Leider sorgt die Kommunikation zwischen Java und JavaScript auf der Mac-Plattform für Probleme. Safari (und damit Konqueror auch) unterstützten zwar Java, wenn die Java-Erweiterung für Mac OS installiert ist, aber nicht den Zugriff darauf von JavaScript aus. Auch der Internet Explorer kann unter Mac nicht per JavaScript auf ein eingebettetes Applet zugreifen. Allerdings gibt es Hoffnung für die Mac-Jünger: Aktuelle Versionen der OS-X-Browser unterstützen wieder den JavaScript-Zugriff auf Java-Applets – allerdings erst ab OS X 10.3. Hier klicken, um das Bild zu Vergrößern Abbildung 24.2 Java funktioniert, der JavaScript-Zugriff nur in neueren Versionen Der Netscape Navigator bietet des Weiteren die Möglichkeit, von Java-Programmen aus JavaScript-Objekte anzusprechen. Diese Möglichkeit bietet der Microsoft Internet Explorer nicht, und die Funktionalität kann man auch in der anderen Richtung bereitstellen (d. h., man kann von JavaScript aus geeignete Java-Methoden aufrufen). Auch in neueren Mozilla-Browsern sucht man nach diesen Features vergeblich, weswegen wir sie hier außen vor lassen.
<< zurück | <top> | vor >>
Zum Katalog
JavaScript und AJAX bestellen
Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen? Ihre Meinung
Buchtipps
| JavaScript und AJAX - Das Video-Training
| Webseiten programmieren und gestalten
| XHTML, HTML und CSS
| CSS-Praxis
| AJAX
| PHP 5 und MySQL 5
| TYPO3 4.0
Shopping
Versandkostenfrei bestellen in Deutschland und Österreich Info

Copyright © Galileo Press 2007
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

[Galileo Computing]
Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de