Javaアプレットの基本動作|Javaから楽しく学ぶ!ゲームプログラミング専門学校

Javaから楽しく学ぶ!ゲームプログラミング専門学校

ゲームプログラミングとはその名のとおりゲームのプログラムを作ることを指します。『Javaから楽しく学ぶ!ゲームプログラミング専門学校』ではゲームプログラミングについて、実際にゲームプログラムをJAVAプログラミング言語を使用し、作成していきながら詳しく解説していきます。

Javaアプレットの基本動作

Javaアプレットとして動作させるためにはAppletクラスを継承する必要があります。
このAppletクラスには、少し特殊なメソッドが実装されています。

メソッド名メソッドが呼び出されるタイミング
init()ブラウザが起動されて、Javaアプレットが初期化されるとき
start()ブラウザの起動または再読み込みによってJavaアプレットが開始・再開されるとき
stop()他のWebページに移動するなどにより、Javaアプレットが停止されるとき
destroy()ブラウザが終了し、Javaアプレットが終了するとき

上記表のメソッドは自分で意図的に呼び出すのではなく、「メソッドが呼び出されるタイミング」に記したユーザーが行うブラウザ操作にあわせて自動的に呼び出されるようになっています。

下記にサンプルを記します。
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.event.MouseListener;
import java.awt.event.MouseEvent;

public class applet01 extends Applet implements MouseListener{
int x = 70;
int y = 45;

public void init(){
addMouseListener(this);
}
public void mouseClicked(MouseEvent e){
}
public void mouseEntered(MouseEvent e){
}
public void mouseExited(MouseEvent e){
}
public void mousePressed(MouseEvent e){
x = e.getX();
y = e.getY();
repaint();
}
public void mouseReleased(MouseEvent e){
}
public void paint(Graphics g){
g.fillOval(x - 5, y - 5, 10, 10);
}
}
  → 動作確認

※Javaアプレットを動かすにはclassファイルをHTML文章の中に組み込みブラウザを起動させる必要があります。
詳しくはJavaアプレットの動作方法を参照ください。

上記サンプルを実行すると、マウスでクリックした位置に黒マルが表示されます。
以降、ソースコードについて見ていきます。
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.event.MouseListener;
import java.awt.event.MouseEvent;
ここでは、Javaが提供するクラスライブラリをプログラム中で使えるようにインポートしています。


public class applet01 extends Applet implements MouseListener{
………
}
クラス宣言部です。
Javaアプレットとして動作させるためにAppletクラスを継承しています。
Appletクラスを継承したクラスがJavaアプレットということになります。

また、今回のサンプルではマウスによるクリックイベントも取得しています。

Javaでは「マウスをクリックした」などというユーザ操作をプログラム側で認識できるしくみを用意しています。
そのしくみを使うためMouseListenerインターフェイスを実装しています。


    public void init(){
addMouseListener(this);
}
ブラウザが起動されて、Javaアプレットが初期化されるときに自動的に呼び出されるinit()メソッドをオーバーライドしています。
init()メソッド内で、addMouseListener()メソッドを呼び出し、マウスイベントを受け取れる準備をします。


    public void mouseClicked(MouseEvent e){
}
public void mouseEntered(MouseEvent e){
}
public void mouseExited(MouseEvent e){
}
public void mousePressed(MouseEvent e){
x = e.getX();
y = e.getY();
repaint();
}
public void mouseReleased(MouseEvent e){
}
MouseListenerインターフェイスに含まれているメソッドは下記になります。

mouseClicked()マウスをクリックしたとき
mouseEntered()マウスがアプレット内に入ったとき
mouseExited()マウスがアプレット外へ出たとき
mousePressed()マウスのボタンを押したとき
mouseReleased()マウスのボタンをはなしたとき

インターフェイスを実装した場合、そのインターフェイスに含まれる全てのメソッドを定義しなくてはなりません。そのため、今回はmousePressed()メソッドしか使用していませんが、使わないメソッドも定義しています。

    public void mousePressed(MouseEvent e){
x = e.getX();
y = e.getY();
repaint();
}
mousePressed()メソッドは、引数としてMouseEventオブジェクトを受け取ります。
 MouseEventオブジェクトは現在のマウスの座標位置などの情報を持っており、それらの情報をフィールドに保存しています。
repaint()メソッドを呼び出すとpaint()メソッドが呼び出され、アプレットの画面が描画されます。


    public void paint(Graphics g){
g.fillOval(x - 5, y - 5, 10, 10);
}
GraphicsオブジェクトのfillOval()メソッドにより楕円を描いています。

トラックバック:0Edit
Copyright © Javaから楽しく学ぶ!ゲームプログラミング専門学校 All Rights Reserved.
当サイトのテキストや画像等すべての転載転用・商用販売を固く禁じます