📄 dragon.java
字号:
else if(background.equals("lightgray")){bgred = 211; bggreen = 211; bgblue = 211;}
else if(background.equals("magenta")){bgred = 255; bggreen = 0; bgblue = 255;}
else if(background.equals("orange")){bgred = 255; bggreen = 165; bgblue = 0;}
else if(background.equals("pink")){bgred = 255; bggreen = 192; bgblue = 203;}
else if(background.equals("red")){bgred = 255; bggreen = 0; bgblue = 0;}
else if(background.equals("white")){bgred = 255; bggreen = 255; bgblue = 255;}
else if(background.equals("yellow")){bgred = 255; bggreen = 255; bgblue = 0;}
else{bgred = 255; bggreen = 255; bgblue = 255;}
bgcolor = new Color(bgred,bggreen,bgblue);
}
}
public Font initFont(){
String fontname;
String stylestring;
int fontstyle = -1;
int fontsize;
String sizestring;
Font font;
Font defaultfont;
defaultfont = getFont();
fontname = getParameter("fontname");
if(fontname == null)
fontname = defaultfont.getName();
stylestring = getParameter("fontstyle");
if(stylestring == null)
fontstyle = defaultfont.getStyle();
// Get the Font
if(fontname.equalsIgnoreCase("Courier") ||
fontname.equalsIgnoreCase("Dialog") ||
fontname.equalsIgnoreCase("Helvetica") ||
fontname.equalsIgnoreCase("TimesRoman") )
{
// Nothing to do the fontname is supported
}
else{
fontname = defaultfont.getName();
}
if(fontstyle == -1) {
// Get the Font Style
if(stylestring.equalsIgnoreCase("PLAIN"))
fontstyle = Font.PLAIN;
else if(stylestring.equalsIgnoreCase("BOLD"))
fontstyle = Font.BOLD;
else if(stylestring.equalsIgnoreCase("ITALIC"))
fontstyle = Font.ITALIC;
else if(stylestring.equalsIgnoreCase("PLAIN_ITALIC"))
fontstyle = Font.ITALIC|Font.PLAIN;
else if(stylestring.equalsIgnoreCase("BOLD_ITALIC"))
fontstyle = Font.ITALIC|Font.BOLD;
else
fontstyle = Font.BOLD;
}
// Get the Font Size
sizestring = getParameter("fontsize");
if(sizestring == null)
fontsize = defaultfont.getSize();
else {
try {
fontsize = Integer.parseInt(sizestring);
}
catch (NumberFormatException e) {
fontsize = defaultfont.getSize();
}
}
font = new Font(fontname, fontstyle, fontsize);
return font;
}
//start儊僜僢僪偺拞偱嶌惉偝傟偨昤夋梡僗儗僢僪偑僗僞乕僩偡傞偲屇傃弌偝傟丄Web儁乕僕偑奐偐傟偰偄傞娫丄昤夋傪孞傝曉偡偨傔偺儖乕僾傪幚峴偡傞
public void run() {
Thread.currentThread().setPriority(Thread.NORM_PRIORITY-3);
while (kicker != null) {
repaint();
try {
Thread.sleep( 20 );
} catch (InterruptedException e) {}
}
kicker=null;
}
public void update(Graphics g) {
paint(g);
}
//嵞昤夋偑昁梫偲側偭偨偲偒偵Java僔僗僥儉偐傜屇傃弌偝傟偨傝丄run儊僜僢僪偺repaint()屇傃弌偟偺寢壥丄僔僗僥儉偐傜娫愙揑偵屇傃弌偝傟傞儊僜僢僪偱丄傾僾儗僢僩偺昞帵偵娭偡傞張棟傪峴偆
public void paint(Graphics g) {
// grf.setFont( font );
grf.setFont(font);
grf.setColor(bgcolor);
grf.fillRect(0, 0, d.width, d.height);
if(xScroll == d.width){
if(random == 1){
red = (int)(Math.random() * 256);
blue = (int)(Math.random() * 256);
green = (int)(Math.random() * 256);
color = new Color(red,green,blue);
}
curTextCount++;
if(curTextCount > maxText){
curTextCount=1;
}
strWidth = (getFontMetrics(font)).stringWidth(s[curTextCount-1]);
separated = new char [ s[curTextCount-1].length() ];
s[curTextCount-1].getChars(0,
s[curTextCount-1].length(),separated,0);
}
grf.setColor(color);
xScroll -= speed;
int _xOffset=0; //_floatdx攝楍偺揧偊帤偲偟偰巊梡偡傞丄攝楍偺0斣栚偼昞帵堟偺塃抂偵懳墳偡傞
int _width = d.height - y_Point;
for(int i=0;i < s[curTextCount-1].length();i++){
int _floatIdx=0;
int _y;
_xOffset += (i != 0)?
(getFontMetrics(font)).charWidth(separated[i-1]) : 0;
if( xScroll + _xOffset < d.width ){
if( d.width - xScroll - i >= 0 ){
_floatIdx = (d.width - xScroll - i) % maxFloatArray;
}
else{
_floatIdx = 0;
}
}
_y = (int)(f[ _floatIdx ] * _width * 0.9);
grf.drawChars(separated, i,1 ,xScroll + _xOffset,
y_Point + _y );
}
if(xScroll < -strWidth ){
xScroll = d.width;
}
g.drawImage(offs, 0, 0, this);
}
//傾僾儗僢僩偵懳墳偟偰偄傞Web儁乕僕偑奐偐傟偨捈屻偵Java僔僗僥儉偐傜帺摦揑偵屇傃弌偝傟丄昤夋梡僗儗僢僪傪嶌惉偟偰僗僞乕僩偝偣傞
public void start() {
if (kicker == null) {
kicker = new Thread(this);
kicker.start();
}
}
//幚峴拞偺傾僾儗僢僩傪杽傔崬傫偩Web儁乕僕偑懠偺儁乕僕傊愗傝懼傢傞偲偒丄Java僔僗僥儉偐傜帺摦揑偵屇傃弌偝傟丄昤夋梡僗儗僢僪傪掆巭偡傞偲摨帪偵丄run偺while儖乕僾傪扙弌偡傞偨傔偵kicker偵null傪擖傟傞
public void stop() {
if (kicker != null) {
kicker.stop();
kicker = null;
}
}
}
//</pre> </body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -