import browser.Applet;
import awt.Graphics;
import awt.Image;
/** 新しいアプレットのクラスの定義 */
class UpImage extends Applet inplements Runnable {
Thread slideThread=null; //スレッドの宣言
private Image image=null; // イメージの宣言
private int y=0; // イメージのアプレット内の位置
/** 初期設定の関数。イメージを生成、サイズを設定。*/
protected void init() {
String imageSource = getAttribute("image");
if ( imageSource== null )
imageSource = "/hokusei/staff/fujiki.gif";
image = getImage( imageSource );
resize( image.width*2, image.height );
}
/** アプレットの表示を行う関数。初期設定の画像。*/
public void paint( Graphics g ) {
g.drawImage( image, 0, 0 );
}
/** アプレットのクリアを行わないで、イメージを描き直す。*/
public void update( Graphics g ) {
g.drawImage( image, 0, y - image.height );
g.drawImage( image, 0, y );
}
/** アプレットが画面に現れた時に呼び出される。*/
protected void start() {
if( slideThread == null ) {
slideThread = new Thread( this );
slideThread.start(); //スレッド起動
}
}
/** アプレットが画面から消えた時に呼び出される。*/
protected void stop() {
if( slideThread != null ) {
slideThread = null; //スレッド停止
}
}
/** アプレットが続行する作業 */
public void run() {
while( slideThread.isAlive() ) {
repaint();
y = (y+4) % image.height; //位置をずらす
Thread.sleep(200); //一時停止200ミリ秒
}
}
}