以下是一个使用 Java 多线程在图形界面文本框中实时显示系统时间的示例代码:

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

public class TimeDisplay extends JFrame implements Runnable {
    private JTextField textField;

    public TimeDisplay() {
        super('Time Display');
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setSize(300, 100);
        setLocationRelativeTo(null);

        textField = new JTextField();
        textField.setEditable(false);
        textField.setFont(new Font('Arial', Font.PLAIN, 20));
        add(textField, BorderLayout.CENTER);

        setVisible(true);
    }

    @Override
    public void run() {
        while (true) {
            Date now = new Date();
            SimpleDateFormat dateFormat = new SimpleDateFormat('yyyy-MM-dd HH:mm:ss');
            String time = dateFormat.format(now);
            textField.setText(time);

            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }

    public static void main(String[] args) {
        TimeDisplay timeDisplay = new TimeDisplay();
        Thread thread = new Thread(timeDisplay);
        thread.start();
    }
}

该程序继承了 JFrame 类,创建了一个窗口,其中包含一个文本框用于显示时间。在 run 方法中,通过 SimpleDateFormat 类获取当前时间并格式化,然后将其显示在文本框中。程序通过在 main 方法中启动一个新线程来实现每隔 1 秒刷新时间的功能。

Java 多线程实时显示系统时间 - 图形界面示例

原文地址: https://www.cveoy.top/t/topic/jmia 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录