| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 826 人关注过本帖
标题:[求助]java动态时间
只看楼主 加入收藏
非凡DZ
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2007-4-6
收藏
 问题点数:0 回复次数:5 
[求助]java动态时间

package untitled1;

import java.awt.BorderLayout;

import javax.swing.JFrame;
import javax.swing.JLabel;
import java.awt.*;
import javax.swing.*;
import java.util.Date;
import java.text.SimpleDateFormat;

public class Frame2 extends JFrame implements Runnable{
Thread a=new Thread();
public Frame2() {
try {
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}

private void jbInit() throws Exception {
getContentPane().setLayout(null);
jLabel1.setBorder(BorderFactory.createLineBorder(Color.black));
jLabel1.setText("");
jLabel1.setBounds(new Rectangle(19, 35, 221, 29));
this.getContentPane().add(jLabel1);
a.start();
}

public void run(){
while(true){
try {
Thread.sleep(1000);
} catch (InterruptedException ex) {
}
Date d = new Date();//得到系统当前时间
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String timeB = sf.format(d);//得到指定格式的时间
jLabel1.setText(timeB);
}
}

JLabel jLabel1 = new JLabel();
}
请问我的jLabel1中为什么不能动态显示时间

搜索更多相关主题的帖子: java 动态 时间 
2007-09-01 09:27
非凡DZ
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2007-4-6
收藏
得分:0 
知道哪里有问题了 Thread a=new Thread(this);
加个this就行了 可是为什么呢 请高手指点

2007-09-01 09:40
a276202460
Rank: 2
等 级:新手上路
威 望:4
帖 子:392
专家分:1
注 册:2007-4-10
收藏
得分:0 
线程有运行起来吗??

2007-09-01 09:43
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
以下是引用非凡DZ在2007-9-1 9:40:24的发言:
知道哪里有问题了 Thread a=new Thread(this);
加个this就行了 可是为什么呢 请高手指点

你随便new一个Thread对象,没有传入Runnable接口给它,它怎么知道要run什么呢?

默认Thread里面的run方法是一个空的run方法,所以你直接构造一个然后再运行,是什么都不会发生的,一个线程刚刚创建就被销毁了

而你把this传给它,是因为this是实现了Runnable接口的,所以线程起动后,将执行你自己定义的run方法


可惜不是你,陪我到最后
2007-09-01 09:52
非凡DZ
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2007-4-6
收藏
得分:0 

多谢版主指教 我了解了


2007-09-01 11:30
tao123520
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-8-15
收藏
得分:0 
回复:(非凡DZ)[求助]java动态时间

你那个还要加个显示窗口的和一个main函数 不然怎么让子程序运行呢? 完整的代码应该是这样:
package untitled1;

import javax.swing.JFrame;
import javax.swing.JLabel;
import java.awt.*;
import javax.swing.*;
import java.util.Date;
import java.text.SimpleDateFormat;

public class Frame2 extends JFrame implements Runnable{
Thread a=new Thread(this);
public Frame2 () {

setSize( 400 , 400 );
setVisible( true );
setDefaultCloseOperation( EXIT_ON_CLOSE );//显示窗口的
try {
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}

private void jbInit() throws Exception {
getContentPane().setLayout(null);
jLabel1.setBorder(BorderFactory.createLineBorder(Color.black));
jLabel1.setText("");
jLabel1.setBounds(new Rectangle(19, 35, 221, 29));
this.getContentPane().add(jLabel1);
a.start();
}

public void run(){
while(true){
try {
Thread.sleep(1000);
} catch (InterruptedException ex) {
}
Date d = new Date();//得到系统当前时间
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String timeB = sf.format(d);//得到指定格式的时间
jLabel1.setText(timeB);
}
}

JLabel jLabel1 = new JLabel();

public static void main( String[] args){
Frame2 show = new Frame2();
}//加个main
}


2007-09-06 11:33
快速回复:[求助]java动态时间
数据加载中...
 
   



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

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