※ ChatGPTを利用し、要約された質問です(原文:動きません!!教えて下さい!)
Javaでリアルタイムに時間を表示する方法
このQ&Aのポイント
Javaでリアルタイムに時間を表示するためのコードが提供されています。
ソースコードにはスレッドを使用して時間を取得して表示する処理が含まれています。
しかし、スレッドが正常に動作しないため、時間が表示されません
import java.awt.*;
import java.awt.event.*;
import java.util.*;
class test extends Frame implements Runnable
{
int year=0,month=0,date=0,hour=0,min=0,sec=0;
Thread th;
Calendar cal=Calendar.getInstance();
public void start()
{
th = new Thread(this); //時間表示スレッド作成
th.start(); //時間表示スレッド起動
}
public void run()
{
for(int i=0;i<1000;i++)
{
year=cal.get(Calendar.YEAR); //年 取得
month=cal.get(Calendar.MONTH)+1; //月 取得
date=cal.get(Calendar.DATE); //日 取得
hour=cal.get(Calendar.HOUR_OF_DAY); //時 取得
min=cal.get(Calendar.MINUTE); //分 取得
sec=cal.get(Calendar.SECOND); //秒取得
repaint();
try
{
Thread.sleep(1000);
}
catch(InterruptedException e){}
}
}
public static void main(String args[])
{
Frame tt=new TimeTable();
}
public TimeTable()
{
setSize(800,600);
setVisible(true);
//閉じる
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
}
public void paint(Graphics g)
{
g.drawString(year + "年" + month + "月" + date + "日",100,100);
g.drawString(hour + "時" + min + "分" + sec + "秒",300,100);
}
}
(END)
上のソース(抜粋)なのですが、思い通り動きません…!!
リアルタイムに時間を表示するようにしたいのですが…
どうしてスレッドは動いてくれないのでしょうか、、、コメントお願いします。
お礼
ありがとうございます!! なんとか動くようになりました!!