import java.awt.*;
import java.awt.event.*;
import java.util.Date;
import javax.swing.*; class timeframe extends JFrame implements Runnable {
Container pane = getContentPane();
Label L1 = new Label();
Label L2 = new Label();
Label L3 = new Label();
String hour,minute,second;
int flag = 0;
public timeframe() {
Thread timethread = new Thread();
Date date = new Date();
hour = String.valueOf(date.getHours());
minute = String.valueOf(date.getMinutes());
second = String.valueOf(date.getSeconds());
pane.add(L1,BorderLayout.WEST);
L1.setText(hour+":"+minute+":"+second);
pane.add(L2,BorderLayout.CENTER);
L2.setText(hour+":"+minute+":"+second);
pane.add(L3,BorderLayout.EAST);
L3.setText(hour+":"+minute+":"+second);
timethread.start();
}
public void run() {
while(true){
try {
Date date = new Date();
hour = String.valueOf(date.getHours());
minute = String.valueOf(date.getMinutes());
second = String.valueOf(date.getSeconds());
flag++;
L1.setText(hour+":"+minute+":"+second);
if(flag % 5 == 0)
L2.setText(hour+":"+minute+":"+second);
if(flag % 10 == 0)
L3.setText(hour+":"+minute+":"+second);
Thread.sleep(1000);
}catch(InterruptedException e) {}
}}
public static void main(String[] args){
timeframe time1 = new timeframe();
time1.pack();
time1.show();
}
}就显示三个时间标签的
为什么我的显示的时间总是初始化时的那个时间的
大家帮帮忙了
import java.awt.event.*;
import java.util.Date;
import javax.swing.*; class timeframe extends JFrame implements Runnable {
Container pane = getContentPane();
Label L1 = new Label();
Label L2 = new Label();
Label L3 = new Label();
String hour,minute,second;
int flag = 0;
public timeframe() {
Thread timethread = new Thread();
Date date = new Date();
hour = String.valueOf(date.getHours());
minute = String.valueOf(date.getMinutes());
second = String.valueOf(date.getSeconds());
pane.add(L1,BorderLayout.WEST);
L1.setText(hour+":"+minute+":"+second);
pane.add(L2,BorderLayout.CENTER);
L2.setText(hour+":"+minute+":"+second);
pane.add(L3,BorderLayout.EAST);
L3.setText(hour+":"+minute+":"+second);
timethread.start();
}
public void run() {
while(true){
try {
Date date = new Date();
hour = String.valueOf(date.getHours());
minute = String.valueOf(date.getMinutes());
second = String.valueOf(date.getSeconds());
flag++;
L1.setText(hour+":"+minute+":"+second);
if(flag % 5 == 0)
L2.setText(hour+":"+minute+":"+second);
if(flag % 10 == 0)
L3.setText(hour+":"+minute+":"+second);
Thread.sleep(1000);
}catch(InterruptedException e) {}
}}
public static void main(String[] args){
timeframe time1 = new timeframe();
time1.pack();
time1.show();
}
}就显示三个时间标签的
为什么我的显示的时间总是初始化时的那个时间的
大家帮帮忙了
解决方案 »
- 关于 php ,java 取yahoo site ,yahoo link, google link ,google site
- suse linux 下,执行 Runtime.getRuntime().exec(cmd) 不成功
- 菜鸟学java之求高手帮助
- 2.14是double,为什么?浮点数的取值范围怎么计算(如4个字节,有效位为7)?
- JAVA 安装问题
- java中通过代理服务器访问网页的问题
- 如何把项目打包生成exe文件?
- 急求简体汉字的内码区间(GBK)
- 初学JAVE需要安装什么软件?
- JDBC获取数据库时间总是差两天(Date类型)
- applet 怎样锁定窗体的大小,让她不改变。
- 请问如何在一个非空文件后,追加写数据(用 FileWriter)
其次,这个程序不会退出的
你的问题:
Thread timethread = new Thread(this);这样才可以。