标题:闪动文字的程序
只看楼主
HGC2006
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2006-7-31
 问题点数:0 回复次数:11 
闪动文字的程序

这个程序执行不了 请帮忙看一下好吗?怎么解决啊? 我的classpath .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
系统变量是 path . ;%JAVA_HOME%\bin;C:\oracle\bin;C:\Program Files\Oracle\jre\1.3.1\bin;C:\Program Files\Oracle\jre\1.1.8\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%ANT_HOME%\bin;C:\Program Files\SecureCRT\
源码:
import java.awt.*;
import java.util.StringTokenizer;
public class BlinkText extends java.applet.Applet implements Runnable
{
Thread blinker;
String lbl;
Font font;
int speed;
public void init (){
font = new java.awt.Font("TimesRoman",Font.PLAIN,24);
String att = getParameter("speed");
speed = (att == null) ? 400 : (1000 / Integer.valueof(att).intValue());
att = getParameter("lbl");
lbl = (att == null) ? "Blink" : att;
}
public void paint (Graphics g){
int x = 0, y = font.getSize(),space;
int red = (int)(Math.random() * 50);
int green = (int)(Math.random() * 50);
int blue = (int)(Math.random() * 256);
Dimension d = size ();
g.setColor(Color.black);
g.setFont(font);
FontMetrics fm = g.getFontMetrics();
space = fm.stringWidth("");
for (StringTokenizer t = new StringTokenizer(lbl);t.hasMoreTokens();){
String word = t.nextToken();
int w = fm.stringWidth(word) + space;
if (x + w > d.width){
x = 0;
y +=font.getSize();
}
if (Math.random() <0.5) {
g.setColor(new java.awt.Color((red + y * 30) % 256,(green + x /3) % 256,blue));
}else{
g.setColor(Color.lightGray);
}
g.drawString(word, x, y);
x +=w;
}
}
public void start(){
blinker = new Thread(this);
blinker.start();
}
public void stop() {
blinker.stop();
}
public void run() {
while (true) {
try {
Thread.currentThread().sleep(speed);
}catch (InterruptedException e){}
repaint();
}
}
}
搜索更多相关主题的帖子: JAVA HOME bin java 
2006-08-28 15:52
无理取闹
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:53
帖 子:4264
专家分:0
注 册:2006-7-26
得分:0 
valueOf()

win32汇编
病毒 加密
目前兴趣所在
2006-08-28 18:06
HGC2006
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2006-7-31
得分:0 

谢谢楼上解决了第一个问题,但是第二个问题还没解决啊???


如果世界都是好人,那要警察干嘛?
2006-08-29 08:27
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
得分:0 
public void stop() {
blinker.stop();
}

blinke.stop这个方法 是过时的

可惜不是你,陪我到最后
2006-08-29 12:42
HGC2006
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2006-7-31
得分:0 

谢谢楼上版主,但是怎么解决啊 能赐教一下吗 谢谢


如果世界都是好人,那要警察干嘛?
2006-08-29 12:49
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
得分:0 

自己在线程里面定义一个标量,当要线程退出时,把这个标量设为false就可以了
比如
while(go){
//
}
go=false就可以退出这个循环了


可惜不是你,陪我到最后
2006-08-29 13:10
xxxxx52
Rank: 4
等 级:贵宾
威 望:13
帖 子:689
专家分:0
注 册:2006-4-30
得分:0 

好的资料下载网站http:///in.asp?id=xuelion2006 嘿嘿帮点一下拉~
2006-08-29 13:21
HGC2006
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2006-7-31
得分:0 

版主,对不起啊!!本人刚学java不太懂你的意思,能否在源码里帮我修改一下,让我更好的理解!!!多谢多谢!!!


如果世界都是好人,那要警察干嘛?
2006-08-29 16:53
无理取闹
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:53
帖 子:4264
专家分:0
注 册:2006-7-26
得分:0 
千里的意思就是写个循环
控制循环的条件就是那个go(是boolean型的)
如果想退出就将go=false
while(go)
{
}

不就不循环了么!!
对了
楼主和我是一个学校的!!!!!!!11

win32汇编
病毒 加密
目前兴趣所在
2006-08-29 19:47
HGC2006
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2006-7-31
得分:0 

楼上的校友能否把解决的方法写在我的程序里,让这个程序能运行~~多谢了啊~~
我是06年的毕业生 你还在学校上学吗 你是哪个省的啊


如果世界都是好人,那要警察干嘛?
2006-08-30 09:24



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-86564-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.306119 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved