// JAVA applet sample 'DrawTextUpScroll.java' for kitaro C3Lab JAVA lab
// copyright (c) by kitaro 1996
// このプログラムはテキストを表示するアプレットサンプルです
// バックグラウンド処理で表示すればされにきれいになりますが
// 動作理解をメインに表画面のみで表示しています
import java.applet.*;
import java.awt.*;
public class DrawTextUpScroll extends java.applet.Applet implements Runnable {
String str,font,temp;
int x,y,size;
Color color,bgcolor;
Font f;
//
Thread thread;
int timer,count;
//
FontMetrics fm;
int count_max;
int skip_count;
//
public void init(){
str = getParameter("str"); if(str ==null)str ="HelloWorld";
font = getParameter("font"); if(font==null)font="Ariel";
temp = getParameter("size"); if(temp==null)temp="24"; size = Integer.valueOf( temp ).intValue();
temp = getParameter("x"); if(temp==null)temp="15"; x = Integer.valueOf( temp ).intValue();
temp = getParameter("y"); if(temp==null)y=size; else y = Integer.valueOf( temp ).intValue();
f = new Font(font,Font.BOLD,size);
setFont( f );
temp = getParameter("color"); if(temp==null)temp="FFFFFF";
color = new Color(
Integer.valueOf(temp.substring(0,2),16).intValue(),
Integer.valueOf(temp.substring(2,4),16).intValue(),
Integer.valueOf(temp.substring(4 ),16).intValue());
setForeground(color);
temp = getParameter("bgcolor"); if(temp==null)temp="000000";
bgcolor = new Color(
Integer.valueOf(temp.substring(0,2),16).intValue(),
Integer.valueOf(temp.substring(2,4),16).intValue(),
Integer.valueOf(temp.substring(4 ),16).intValue());
setBackground(bgcolor);
//-----------------------------------------------------------
temp = getParameter("timer"); if(temp==null)temp="10"; timer = Integer.valueOf( temp ).intValue();
temp = getParameter("scount"); if(temp==null)temp="4"; skip_count = Integer.valueOf( temp ).intValue();
fm = getFontMetrics(f);
count_max = fm.getHeight();
count_max*=2;
count = -(count_max);
}
public void start(){
thread = new Thread(this);
thread.start();
}
public void run (){
while(true)
{
try{
thread.sleep(timer);
}
catch(Exception e){
}
repaint();
count+=skip_count;
if( count >= count_max) count=-count_max;
}
}
public void paint(Graphics g){
String s1,s2,s3;
g.drawString(str,x,y-count);
}
}
サンプルHTML
<html>
<head>
<title>DrawTextUpScroll</title>
</head>
<body>
<hr>
<applet code=DrawTextUpScroll width=200 height=60>
<param name=str value=さんぷる>
<param name=timer value=100>
<param name=color value=CCCCFF>
<param name=scount value=2>
</applet>
</body>
</html>
<hr>