以前学VB的时候有个Timer控件,设置它的响应时间为1秒,每过一秒钟重写一次Label为当前的系统时间,就可以做到了。可Java的GUI中没有这个控件,我试着用线程去写,可是无奈水平有限,半天都没有搞定,不知哪位大侠有实现的方法吗?先谢谢了!
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-DD hh:mm:ss")
jLabel1.setText(sdf.format(new Date()));
就是让它每秒钟变一次,并显示在Label中。
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-DD hh:mm:ss")
jLabel1.setText(sdf.format(new Date()));
就是让它每秒钟变一次,并显示在Label中。
import java.text.SimpleDateFormat;
import java.util.Date;public class Test extends JFrame
{
JLabel label;
public Test()
{
super("Time");
setSize(200,100);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
label=new JLabel();
add(label);
new A(label).start();
setVisible(true);
}
public static void main(String[] args) {
new Test();
}
}
class A extends Thread
{
JLabel label;
public A(JLabel label)
{
this.label=label;
}
public void run()
{
try {
while(true){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-DD hh:mm:ss");
label.setText(sdf.format(new Date()));
sleep(1000);
}
}
catch (Exception ex) {
ex.printStackTrace();
}
}
}