Javaアプレットはブラウザで動かすほかに、JDKに付属のappletviewerというプログラムで動作させることが可能です。
早速サンプルプログラムを見てみましょう。まず2行目のimportはAppletクラスを使うために必要なimportになります。
4〜6行目のコメントの中は、Javaのソースコードとして必要なのではなく、appletviewerで使用するために必要な行です。コメントアウトになっているため、コンパイル時には何の影響も与えません。code=の中にclassファイルを記述します。widthはJavaAppletの幅、heightはJavaAppletの高さを指定します。これはAppletの中でsetSizeメソッドを用いても、ここで指定するwidthとheightが優先されます。(ダイアログやフレームはsetSizeで指定できます。)
ブラウザ上で実行する場合、JavaAppletが実行できない時に何かしら表示させたい場合は、</Applet>の前に記述します。
なお、クラス名以外は大文字、小文字は区別されません。
ソースコードですが、クラスは必ずpublicでAppletクラスのサブクラスとして作成します。今まで作ってきたstaic void mainメソッドは必要ありません。詳しくは後述しますが、最初にpublic void init()メソッドが呼ばれます。通常ここでコンストラクタで記述するような内容を定義します。
また、AppletクラスはComponentクラスのサブクラスなので、paintメソッドでいろいろ描画が可能です。
import java.awt.*;
import java.applet.*;
/*
<applet code="TestApplet19_02" width=200 height=150></Applet>
*/
public class TestApplet19_02 extends Applet{
public void init(){
}
public void paint(Graphics g){
g.drawString("Welcome Java Applet World", 20,20);
}
}
|
|
コンパイルはこれまで通りjavacプログラムを使ってコンパイルします。実行は上の例のようにappletviewerを使用しますが、javaプログラムと違い、javaファイルを指定します。appletviewerは指定されたファイルを読み込み4〜6行目に描かれている<applet>タグを呼んで、実行します。
ブラウザで実行するためには、htmlファイルに次のように記述します。
<Applet code="TestApplet19_02" width=200 height=150></Applet>
|
そしてTestApplet19_02.classファイルをそのhtmlファイルと同じフォルダに入れておきます。すると下記のようになります。
<Applet>タグについてもう少し詳しく書きます。
上のcodeやwidth、heightは省略できないパラメータですが、省略できるパラメータとして以下のようなものも用意されています。
省略できないパラメータ |
code |
クラス名を記述します。 |
code="TestApplet" |
width |
アプレットのサイズをピクセルもしくは%で指定します。 |
width=300 width=80% |
height |
アプレットのサイズをピクセル単位で指定します。 |
height=300 |
省略できるパラメータ |
codebase |
クラスファイルの場所をこのhtmlファイルがある場所からの相対場所で示します。 |
codebase="appletfolder" |
alt |
アプレットが実行できない場合に表示するメッセージ |
alt="JavaAppletを実行できる設定にしてください" |
name |
アプレットに名前を設定します。特に同じページ内に同じクラスを複数実行させる場合は指定すべきです。 |
name="Applet1" |
align |
アプレットのは一方法を指定します。 LEFT(左詰め)、RIGHT(右詰)、TOP(上寄)、BOTTOM(下寄)、MIDDLE(上下的に中央寄)などが指定できます。 |
align="top" |
vspace |
上下に空けるスペースを指定します。 |
vspace=10 |
hspace |
左右に空けるスペースを指定します。 |
vspace=10 |