帮我看下这个java小程序

importjava.awt.*;importjava.applet.*;importjava.lang.*;importjava.util.*;publicclassc... import java.awt.*;
import java.applet.*;
import java.lang.*;
import java.util.*;

public class clock extends Applet {

int ox=200;
int oy=150;
int or=150;
public void paint(Graphics g) {

while(true)
{
try {
Thread.sleep(100);
}
catch (Exception ex) {}
finally {}

//
g.setColor(Color.green);
g.fillOval(ox-or,oy-or,2*or,2*or);
//
g.setColor(Color.black);
for(int i=1;i<=12;i++)
{
int x=(int)(ox-4+(or-10)*Math.sin(i*Math.PI/6.0));
int y=(int)(oy+4-(or-10)*Math.cos(i*Math.PI/6.0));
g.drawString(""+i,x,y);
}
//
Calendar dt = Calendar.getInstance();
int hour = dt.get(Calendar.HOUR);//0-12
int hourx = dt.get(Calendar.HOUR_OF_DAY);//0-24
int min = dt.get(Calendar.MINUTE);
int sec = dt.get(Calendar.SECOND);
int year = dt.get(Calendar.YEAR);
int month = dt.get(Calendar.MONTH)+1;
int day = dt.get(Calendar.DAY_OF_MONTH);

String str="今天是:"+year+"年"+month+"月"+day+"日";
g.drawString(str,10,10);

int x3=(int)(ox-4+(or-10)*Math.sin(sec*Math.PI/30.0));
int y3=(int)(oy+4-(or-10)*Math.cos(sec*Math.PI/30.0));
g.drawLine(ox,oy,x3,y3);

}

}
}
上面的是一个钟表的小程序,但是打开后按关闭按钮关不掉。只能强行关闭。麻烦谁给我从上面的程序中给我加点代码变成能关闭的。(HTML那一小段程序我没往上写)
不行的。虽然applet和application之间能通信,但是我加上main()方法后,加上你所说的那段代码还是不行的。麻烦高手给解决下!谢谢!!!
展开
 我来答
羅小健
2009-06-08
知道答主
回答量:28
采纳率:0%
帮助的人:0
展开全部
while(true)
{
try {
Thread.sleep(100);
}
catch (Exception ex) {}
finally {}
....
}

的问题,当程序运行的时候while一直在运行,改成这样:
import java.awt.*;
import java.applet.*;
import java.lang.*;
import java.util.*;

public class clock extends Applet {

int ox=200;
int oy=150;
int or=150;

public void paint(Graphics g) {

g.setColor(Color.green);
g.fillOval(ox-or,oy-or,2*or,2*or);
//
g.setColor(Color.black);
for(int i=1;i<=12;i++)
{
int x=(int)(ox-4+(or-10)*Math.sin(i*Math.PI/6.0));
int y=(int)(oy+4-(or-10)*Math.cos(i*Math.PI/6.0));
g.drawString(""+i,x,y);
}
//
Calendar dt = Calendar.getInstance();
int hour = dt.get(Calendar.HOUR);//0-12
int hourx = dt.get(Calendar.HOUR_OF_DAY);//0-24
int min = dt.get(Calendar.MINUTE);
int sec = dt.get(Calendar.SECOND);
int year = dt.get(Calendar.YEAR);
int month = dt.get(Calendar.MONTH)+1;
int day = dt.get(Calendar.DAY_OF_MONTH);

String str="今天是:"+year+"年"+month+"月"+day+"日";
g.drawString(str,10,10);

int x3=(int)(ox-4+(or-10)*Math.sin(sec*Math.PI/30.0));
int y3=(int)(oy+4-(or-10)*Math.cos(sec*Math.PI/30.0));
g.drawLine(ox,oy,x3,y3);

try {
Thread.sleep(100);
repaint();
}
catch (Exception ex) {}
finally {}

}
}
或者在while中加个boolean值,while(stop),想它停止运行时把stop变成false
程序那点事
2009-06-06 · TA获得超过6140个赞
知道大有可为答主
回答量:3253
采纳率:59%
帮助的人:1313万
展开全部
this.addWindowListener(new WindowAdapter(){//关闭窗口事件
public void windowClosing(WindowEvent e) {

System.exit(0);
}});
试试 我没试 不知道可以不
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
guaidaoK
2009-06-06 · TA获得超过314个赞
知道答主
回答量:468
采纳率:0%
帮助的人:357万
展开全部
是不是防火墙的问题啊??
你把防火墙关了试试。
有些问题是很灵异的,不知道怎么的就能出问题。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
02203776
2009-06-07 · 超过20用户采纳过TA的回答
知道答主
回答量:110
采纳率:0%
帮助的人:0
展开全部
applet程序一般是用网页形式打开的,你可以编辑个html网页,<applet code=HelloWord.class Width=128 height=96>
</applet>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式