1. 程式人生 > 其它 >java SWT中Label實時重新整理當前時間

java SWT中Label實時重新整理當前時間

同樣最近在開發swt的一個專案,業務中的一個功能模組類似百度網盤的上傳進度條

0/80。

即已上傳0個,總共80個。效果展示要的就是實時重新整理,2/80呀,15/80呀,針對這個,就有了這篇文章。

下面附上【Label實時重新整理時間】參考程式碼和原文連結,我是看這段程式碼加上這篇文章有的靈感。

public class test01
{
    private static Shell shell;

    public static void main(String[] args) {
        Display display = Display.getDefault();
        createContents();
        shell.open();
        shell.layout();
        
while (!shell.isDisposed()) { if (!display.readAndDispatch()) { display.sleep(); } } } protected static void createContents() { shell = new Shell(); shell.setSize(450, 300); shell.setText("實時重新整理時間"); final Label label = new
Label(shell, SWT.NONE); label.setFont(SWTResourceManager.getFont("微軟雅黑", 13, SWT.NORMAL)); label.setBounds(69, 48, 174, 41); new Thread() {//執行緒操作 public void run() { while(true) { try {
//對Label進行實時重新整理,需要加上這句 label.getDisplay().asyncExec(new Runnable() { @Override public void run() { // 設定時間 ,格式化輸出時間 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String s = sdf.format(new Date()); label.setText(s);//輸出到Label上 } }); Thread.sleep(1000);//每隔一秒重新整理一次 } catch (Exception e) { } } } }.start(); } }