アプリ版:「スタンプのみでお礼する」機能のリリースについて

パッケージを使用してプログラムを書いたのですが、タイトルのとおりのメッセージがでます。コンパイルはしっかり通るのですが、どなたかお力をお貸しください。
ちなみに、Report2.html、Report2.javaは以下のとおりです。
<html>
<body>
<applet code="rep.Report2.class" width="400" height="200">
</applet>
</body>
</html>







package rep;
import gol.Goal;
import bx.Box;
import bx.BoxException;

import java.applet.Applet;
import java.awt.Graphics;
import java.awt.Color;
import java.awt.Button;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class Report2 extends Applet implements Runnable, ActionListener{
Goal gol; //Boxオブジェクトがはいるゴール
Box[] box;
Button[] bt;
int mxp; //マウスボタン押下時のx座標
int myp; //マウスボタン押下時のy座標
public void init(){
addMouseListener(new MouseAdapter(){
public void mousePressed(MouseEvent e){
mxp=e.getX();
myp=e.getY();
}

public void mouseReleased(MouseEvent e){
int temp=Box.getSum();
if(temp<box.length){
//マウスボタンを離した座標
int mxr=e.getX();
int myr=e.getY();
if(mxp==mxr && myp==myr){
//押すのと離すのが同じ
box[temp]=new Box(gol, mxp, myp);
}
else{
//押すのと離すのが違う
int mw=Math.abs(mxp-mxr);
int mh=Math.abs(myp-myr);
box[temp]=new Box(gol, Math.min(mxp, myr), Math.min(myp, myr), mw, mh);
}
box[temp].start();
}
}
});

Goal gol=new Goal();
box=new Box[3];
bt=new Button[2];
bt[0]=new Button("Box");
bt[1]=new Button("small");
for(int i=0; i<bt.length; i++){
add(bt[i]);
bt[i].addActionListener(this);
}
Thread th;
th=new Thread(this);
th.start();
}

public void run(){
while(true){
repaint();
try{
Thread.sleep(50);
}
catch(InterruptedException e){
}
}
}

public void actionPerformed(ActionEvent ae){
int temp=Box.getSum();
if(ae.getSource()==bt[0]){
if(temp<box.length){
box[temp]=new Box(gol);
box[temp].start();
}
}
else if(ae.getSource()==bt[1]){
for(int i=0; i<temp; i++){
try{
box[i].setHeight(box[i].getHeight()-10);
}
catch(BoxException e){
System.out.println(e +"が送出されました。");
}
}
}
}

public void paint(Graphics g){
g.setColor(Color.red);
for(int i=0; i<box.length; i++)
if(box[i] !=null)
g.fillRect(box[i].getX(), box[i].getY(), box[i].getWidth(), box[i].getHeight());
g.setColor(Color.black);
g.drawString("得点" + gol.getScore(), 10, 80);
}
}

A 回答 (1件)

Appletのinit()メソッドやstart()メソッド、さらに必要ならstop()、destroy()メソッドも、ちゃんと書いてください。

この回答への補足

init()はちゃんと書いているのですが、start()メソッドを書かなくてはならないということでしょうか?
また、それは中身がなくてもいいのですか?

補足日時:2010/01/23 15:57
    • good
    • 0

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