本文目錄一覽:
- 1、怎麼使用Java將時間動態的顯示在網頁中
- 2、Java中如何實現顯示動態的時間?
- 3、java如何在一個文本框動態顯示時間?
- 4、JAVA中JLabel動態顯示時間的問題。
- 5、在java中,要如何在一個文本框動態顯示時間?
怎麼使用Java將時間動態的顯示在網頁中
一段js實現吧:
JScript code
很簡單的一個功能函數,用Date()對象獲取到當前時間,然後用setTimeout每隔1秒獲取最新的時間.
寫的過程中碰到過一個小小的問題: 我最初的想法是用setInterval()每隔1秒獲取最新時間,可是可以,但setInterval如果放在主函數內部,但導致內存泄漏(至於原因,暫時還沒想明白),後來在Rocky的提醒下用setTimeout()才解決內存泄漏問題
function nowTime(ev,type){
/*
* ev:顯示時間的元素
* type:時間顯示模式.若傳入12則為12小時制,不傳入則為24小時制
*/
//年月日時分秒
var Y,M,D,W,H,I,S;
//月日時分秒為單位時前面補零
function fillZero(v){
if(v10){v=’0’+v;}
return v;
}
(function(){
var d=new Date();
var Week=[‘星期天’,’星期一’,’星期二’,’星期三’,’星期四’,’星期五’,’星期六’];
Y=d.getFullYear();
M=fillZero(d.getMonth()+1);
D=fillZero(d.getDate());
W=Week[d.getDay()];
H=fillZero(d.getHours());
I=fillZero(d.getMinutes());
S=fillZero(d.getSeconds());
//12小時制顯示模式
if(type type==12){
//若要顯示更多時間類型諸如中午凌晨可在下面添加判斷
if(H=12){
H=’上午 ‘+H;
}else if(H12 H24){
H-=12;
H=’下午 ‘+fillZero(H);
}else if(H==24){
H=’下午 00′;
}
}
ev.innerHTML=Y+’年’+M+’月’+D+’日 ‘+’ ‘+W+’ ‘+H+’:’+I+’:’+S;
//每秒更新時間
setTimeout(arguments.callee,1000);
})();
Java中如何實現顯示動態的時間?
利用死循環和線程,讓線程在循環中每sleep1秒,重新獲取下系統時間不就是動態顯示時間了嗎
while(true){
Date date=new Date(System.currentTimeMillis());
SimpleDateFormat sdf=new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
System.out.println(date);
//每一秒刷新下時間
try {
Thread.sleep(1000);//sleep是以ms為單位
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
你可以試下代碼,看看是不是你要的效果
java如何在一個文本框動態顯示時間?
package cn.test;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Timer;
import javax.swing.JFrame;
import javax.swing.JTextField;
public class Time extends JFrame {
private JTextField TimeBox = new JTextField();
private Timer timer = new Timer() ;
private SimpleDateFormat sdf = new SimpleDateFormat(“HH:mm:ss”);
public Time() {
TimeBox.setBounds(0, 0, 100, 50);
add(TimeBox);
//方法1 定時器方法
// TimerTask task = new TimerTask() {
// @Override
// public void run() {
// TimeBox.setText(sdf.format(new Date()));
// }
// };
// timer.schedule(task, 1000,1000) ;
//方法2 線程休眠方法
Display timedisplay = new Display();
timedisplay.start() ;
}
private class Display extends Thread {
SimpleDateFormat sdf = new SimpleDateFormat(“HH:mm:ss”);
public Display() {
System.out.println(“display”);
}
@Override
public void run(){
while(true){
System.out.println( “Thread is running…” );
TimeBox.setText(sdf.format(new Date()));
try {
Thread.sleep(1000) ;
} catch (InterruptedException e) {
System.out.println(“sleep error!!”);
e.printStackTrace();
}
}
}
}
public static void main(String[] args) {
Time t = new Time() ;
t.setSize(300, 200) ;
t.setResizable(false) ;
t.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
t.setVisible(true) ;
}
}
JAVA中JLabel動態顯示時間的問題。
初始化你的JLabel
,實例化new
就可以了。
同時你的程序有個比較嚴重的問題,那就是線程是否安全,swing不是線程安全的,你在一個新開的線程中更新GUI可能會報錯,雖然這樣的可能性很低,但是如果你要嚴謹的話,在你的線程中添加如下代碼
SwingUtilities.invokeAndWait(new
Runnable()
{
public
void
run()
{
displayArea.setText(dateFormatter.format(Calendar.getInstance().getTime()));
}
});
在java中,要如何在一個文本框動態顯示時間?
html
head
title時鐘特效/title
script type=”text/javascript”
function disptime(){
var today = new Date(); //獲得當前時間
var hh = today.getHours(); //獲得小時、分鐘、秒
var mm = today.getMinutes();
var ss = today.getSeconds();
/*設置div的內容為當前時間*/
document.getElementById(“myclock”).innerHTML=”h1現在是:”+hh+”:”+mm+”:”+ss+”h1″;
document.getElementById(“myClock1″).value=hh+”:”+mm+”:”+ss;
/*
使用setTimeout在函數disptime()體內再次調用setTimeout
設置定時器每隔1秒(1000毫秒),調用函數disptime()執行,刷新時鐘顯示
*/
var myTime=setTimeout(“disptime()”,1000);
}
/script
/head
body onload=”disptime()”
div id=”myclock”/div
input type=”text” id=”myClock1″ value=””/input
/body
/html
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/227534.html