Informaticasite van het Lauwers College te Buitenpost                 © R.J. van der Beek
 

Hoofdstuk 10: Java Applets

 10.1 Java

Je kunt een speciaal soort programma in je homepage opnemen, dat noemen ze een applet.
Zo'n applet kun je zelf maken (als je er genoeg verstand van hebt), je moet dat dan programmeren in java.
De broncode daarvan heeft de extensie java. Je hebt dan bijv. een bestand met de naam JavaClock.java
Dat bestand moet je compileren m.b.v. java, dan wordt het een zogenaamde class-file. Het gecompileerde bestand heeft dan bijv. de naam JavaClock.class
Dat kun je opnemen in je homepage. Hoe en wat dat lees je verderop.
Ik heb dat in het html-document, dat hoort bij deze pagina, ook gedaan.
Ik heb dat gedaan met een stukje html-code, en daardoor zie je hieronder een klok die de tijd aangeeft.
<--! grootte van de rand --> <--! grootte van de cijfercirkel --> <--! lettertype en grootte van de cijfers --> <--! kleur van de achtergrond rondom de klok --> <--! kleur van de secondewijzer --> <--! kleur van de minutenwijzer --> <--! kleur van de urenwijzer --> <--! kleur van de klok zelf --> <--! kleur van de cijfers -->
Je kunt ook exe-programma's maken met java. Dat zijn dan gewone programma's die niet speciaal bedoeld zijn voor internet-pagina's.
Maar class-files zijn bedoeld voor het gebruik op internet-pagina's, en dat worden dus applets genoemd.

Je hoeft ze echter niet zelf te schrijven om ze te kunnen gebruiken.
Zoals met alles is het ook met applets: Je leert het het beste door te kijken hoe andere mensen het doen.
Je kunt bijv. op De homepage van Java leuke Java applets vinden die je zo kunt gebruiken.

Het kan zijn dat de applets op jouw computer niet worden weergegeven.
Er is plugin voor nodig, die meestal wel op je computer komt bij het installeren van Windows. Maar bij sommige versies van Windows XP gebeurt dat niet, dan moet je JVM (Java Virtual Machine) downloaden van SUN.

Eén van de applets die je op de homepage van Java kunt vinden is een klok. De applet heet JavaClock.class
Die moet je in de map van de homepage zetten.
(en in dit geval moet je nog drie class-files in dezelfde map zetten: ParamParser.class, CusomParser.class en AnalogClock.class; meestal is één class-file voldoende maar hier dus niet. Alleen JavaClock.class hoeft genoemd te worden in het html-document)

 10.2 De code

In het html-document moet je de volgende code opnemen:
<APPLET CODE="JavaClock.class" WIDTH=150 HEIGHT=150 align=top>
</APPLET>

Dat is genoeg. En als het goed gaat verschijnt dan de klok.

Maar je kunt nog meer doen.
Je kunt ook nog zelf bepalen hoe de klok er uit ziet.
Door bijv. de volgende code toe te voegen kun je de kleur van de klok bepalen:
<param name="ccolor" value="dddddd">

Zo kun je nog veel meer bepalen.

Probeer de volgende code maar eens uit:

    <APPLET CODE="JavaClock.class" WIDTH=150 HEIGHT=150 align=top>
    <param  name="border"  value="5">
    <--! grootte van de rand -->
    <param  name="nradius" value="80">
    <--! grootte van de cijfercirkel  -->
    <param  name="cfont"   value="TimesRoman|BOLD|18">
    <--! lettertype en grootte van de cijfers -->
    <param  name="bgcolor" value="ffffff">
    <--! kleur van de achtergrond rondom de klok -->
    <param  name="shcolor" value="ff0000">
    <--! kleur van de secondewijzer -->
    <param  name="mhcolor" value="00ff00">
    <--! kleur van de minutenwijzer -->
    <param  name="hhcolor" value="0000ff">
    <--! kleur van de urenwijzer -->
    <param  name="ccolor"  value="dddddd">
    <--! kleur van de klok zelf -->
    <param  name="ncolor"  value="000000">
    <--! kleur van de cijfers -->
    </APPLET>
Nog een paar andere applets:

  10.3 Een digitale klok:



De bijbehorende code:

<applet CODE="Clock3D.class" WIDTH="200" HEIGHT="200">
<param name="fps" value="18">
<param name="a1" value="12500">
<param name="pixd" value="29">
<param name="pixangle" value="5">
<param name="radius" value="26">
<param name="roty" value="-2">
<param name="rotx" value="0">
<param name="rotz" value="0">
<param name="irotx" value="0">
<param name="iroty" value="0">
<param name="irotz" value="20">
<param name="style" value="1">
<param name="color" value="#ADD8E6">
<param name="bgcolor" value="#000000">
<param name="12hour" value="0">
</applet>

Verander maar eens enkele waarden van de parameters, dan zie je wel wat er gebeurt.
Voorbeeld:
  • roty geeft de snelheid aan waarmee de klok om de y-as (dat is de vertikale as) wentelt. Als je -4 in 4 verandert draait hij de andere kant om.
  • irotz geeft aan hoeveel het assenstelsel om de z-as gedraaid is.
  • 12hour geeft aan of het een 12-uurs klok is (bij value=1) of een 24-uurs klok (bij value=0)

  10.4 Een lachspiegel



De bijbehorende code:

<applet code=QGoo.class width=190 height=300>
<param name="image" value="monica.jpg">
<param name="bgcolor" value="#000000">
</applet>

  • Klik op Goo(big of small): trek aan het hoofd met de muis
  • Klik op UnGoo(big of small): klik op de plaatsen die je hebt veranderd
  • Darken: klik op het hoofd om het donkerder te maken
  • Lighten: klik op de jas om lichte plekken te maken
  • Reset: herstel de foto
Als je wilt dat het goed werkt moet je de bestanden GooCanvas.class en GooControls.class en QGoo.class en flags.class in de bijbehorende map zetten.