性格いい人が優勝

java超初学者です。詳しいかたご教授願います。
java アプリケーションをjava アプレットに書き換えたいのですが、具体的にはどう書き換えを行ったらいいのか修正をお願いします。
(文字制限があるので、14個あるクラスファイルの中で(内1つはhtmlファイル)、メインメソッドを持つ実行クラスだけのせています。)
Appletを継承させる、属性をメインクラスとコンストラクタはpublic にする、
mainメソッドを削除し、initメソッドへ書き換える、サイズ指定は<applet>タグで指定する。等調べましたが
具体的にわかりません。特にコンストラクタとメインメソッドの部分のアプレットへの書き換えがわかりませんでした。
宜しくお願い致します。

//実行クラスです。
import java.awt.*;
import java.awt.event.*;

/**
*ゲームクラス(ここから始まる)<p>
*画面の作成
*/
public class Game extends Frame
{
/**
* メインクラス
*/
public static void main(String args[])
{
//フレームの作成
new Game();
}

/**
* 引数なしのコンストラクタ
*/
Game()
{
//*** ウィンドウの初期化
//タイトル
super("Shooting Game");

//クローズボタンによる終了処理の実装
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
System.exit(0);
}
});

setSize(500, 500);//ウィンドウのサイズ

//*** キャンバスの初期化
MyCanvas mc = new MyCanvas();
add(mc);//フレームにキャンバスを追加
setVisible(true);//ウィンドウの表示
//ゲームデータの初期化
mc.init();
//スレッドを作成
mc.initThread();
}
}

A 回答 (1件)

半角スペース2個を全角スペース1個に変換しています。



import java.applet.*;
import java.awt.*;

public class **** extends Applet implements Runnable {  //****はアプレット名
  Dimension d;
  Thread kicker = null;
  Image offs;
  Graphics grf;

  public void init() {    //初期処理
   d=getSize();
   offs=createImage(d.width, d.height);
   grf=offs.getGraphics();
  }

  public void run() {    //ここは触らなくて良い
    Thread.currentThread().setPriority(Thread.NORM_PRIORITY-3);
    while(kicker != null) {
      repaint();
      try {
        Thread.sleep(100);//動作が遅い場合は数字を小さくする(ミリ秒)
      } catch(InterruptedException e) {}
    }
    kicker=null;
  }

  public void update(Graphics g){  //ここは触らなくて良い
    paint(g);
  }

  public void paint(Graphics g) {
   grf.setColor(Color.white);
                    //ここで画面を作る
   g.drawImage(offs,0,0,this);
  }

  public void start() {       //ここは触らなくて良い
    if(kicker == null) {
      kicker = new Thread(this);
      kicker.start();
    }
  }

  public void stop() {       //ここは触らなくて良い
    if(kicker != null) {
      kicker = null;
    }
  }
}
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!