アプレットの概説 |
自分のアプレットのコードを記述したら、今度はそれをテストしたくなる。ブラウザまたは JDK Applet ビューワーでアプレットを実行するには、<APPLET> タグを使用して HTML ページにアプレットを追加する必要がある。その後、ブラウザ または Applet ビューワーに HTML ページの URL を指定する。注: ブラウザの中には、簡単で動作の保証されたアプレットの再 ロードをサポートしていないものがある。 このため、アプレットをブラウザでテストする必要が生じるまでは、Applet ビュー ワーでテストする方がよい場合が多い。
このページでは、<APPLET> タグを使用する上で知っておくべきほとんどのこ とを説明する。まずタグの最も単純な書式を示し、次にその単純な書式に付加される ことの多い項目についていくつか説明する。これらは CODEBASE 属性、 <PARAM> タグ、代替の HTML コードである。 <APPLET> タグの詳細については、[限定的な APPLET タグ定義への X-REF] を 参照すること。
最も単純な <APPLET> タグ
まず <APPLET> タグの最も単純な書式を示す。上記のタグは、AppletSubclass という名前の Applet サブクラスが アプレット(このタ グを含むHTML 文書と同じディレクトリのクラスファイルにある)をロード するようブラウザまたは Applet ビューワーに指示している。 上記のタグはまた、アプレッ トの幅と高さをピクセル単位で指定している。<APPLET CODE=AppletSubclass.class WIDTH=anInt HEIGHT=anInt> </APPLET>ブラウザがタグを検出すると、そのアプレットに指定された幅と高さで表示エリアを 確保し、指定された Applet サブクラスのバイトコードをロードする。そして、サブクラスのイ ンスタンスを作成し、そのインスタンスの
init()
およびstart()
メソッドを呼び出す。CODEBASE でアプレットのディレクトリを指定する
次に、若干複雑にしたアプレットのタグを示す。 タグにはApplet サブクラスのバイトコードがどのディレクトリにあるかをブラウザ/ビューワ に伝える CODEBASE 属性が追加されている。aURL を絶対パスの URL にすることによって、使用中の HTTP サーバから ロードされた文書に別の HTTP サーバからのアプレットを実行させることができる。aURL が相対 URL の場合は、HTML 文書の位置から相対的に解釈される。<APPLET CODE=AppletSubclass.class CODEBASE=aURL WIDTH=anInt HEIGHT=anInt> </APPLET>ここで紹介する例は HTML 文書を納めたディレクトリのサブディレクトリに配置されているため、このチュートリアルでは
CODEBASE=
someDirectory
/
を頻繁に使用する。 例として、この節で前述したアプレットのライフサイクルの Simple アプレットを組み込んだ <APPLET> タグを示す。<applet code=Simple.class codebase=betaclasses/ width=500 height=20> </applet><PARAM> タグでパラメータを指定する
パラメータを使って、ユーザが構成をカスタマイズできるアプレットもある。たとえば、 AppletButton (このチュートリアル全般で使用する、ウィンドウを起動するボタンを提供するアプレット) では、BUTTONTEXT という名前のパラメータに値を指定 することにより、ユーザがボタンのテキストを設定できるようになっている。 パラメータを使用するコードの書き方は、アプレットのパラメータを定義し使用するで説明する。ここで <PARAM> タグの書式の例を示す。<PARAM> タグは、影響を及ぼすアプレットの <APPLET> と </APPLET> タグの間になければならない。
<APPLET CODE=AppletSubclass.class WIDTH=anInt HEIGHT=anInt> <PARAM NAME=parameter1Name VALUE=aValue> <PARAM NAME=parameter2Name VALUE=anotherValue> </APPLET>次に、実際に使用している <PARAM> タグの例を示す。これはUI 節のページから取り出したものである。
<applet code=AppletButton.class codebase=example width=350 height=60> <param name=windowType value=BorderWindow> <param name=windowText value="BorderLayout"> <param name=buttonText value="Click here to see a BorderLayout in action"> . . . </applet>Java 非対応のブラウザに表示させるテキストを指定する
上記の AppletButton の HTML 例では一部が省略されている (". . .") ことに気づ かれただろうか。ここで省略されていたのは代替の HTML コード、すなわち <APPLET> タグを理解しないブラウザだけが解釈する HTML コードである。作成中のアプレットが Java と互換でないブラウザを通して見られる可能性がある場合は、代替の HTML コードを用意し、ページの意味が通じるようにしておく。 代替の HTML コードは、 <APPLET> と </APPLET> タグの間の、<PARAM> タグを除く任意のテキストである。Java 互換のブラウザはこのような代替の HTML コードを無視する 。
このチュートリアルのオンラインバージョン全般で代替の HTML コードを使用する。 読者が見ることのできないアプレットについて説明し、役立つと思われる場合はそのアプレットの画像を示す。前に紹介した AppletButton の例の完全な HTML コードは次 のとおりである。
<APPLET> タグを理解しないアプレットは、<blockquote> までのすべて を無視する。 <APPLET> タグを理解する アプレットは、<blockquote> と </blockquote> の間のすべてを無視する。<applet code=AppletButton.class codebase=example width=350 height=60> <param name=windowType value=BorderWindow> <param name=windowText value="BorderLayout"> <param name=buttonText value="Click here to see a BorderLayout in action"> <blockquote> <hr> <em> Your browser can't run 1.0 Java applets, so here's a picture of the window the program brings up:</em> <p> <img src=images/BorderEx1.gif width=302 height=138> <hr> </blockquote> </applet>
アプレットの概説