首頁  >  文章  >  Java  >  如何使用沒有按鈕的計時器在單獨的視窗中顯示倒數計時?

如何使用沒有按鈕的計時器在單獨的視窗中顯示倒數計時?

DDD
DDD原創
2024-10-28 03:40:30768瀏覽

How to Display a Countdown in a Separate Window Using a Timer without Buttons?

使用不含按鈕的計時器從另一個JFrame 呼叫一個JFrame

問:如何在不使用任何按鈕的情況下使用計時器從另一個JFrame 呼叫一個JFrame ?

答:雖然提供的問題不夠清晰,但不建議使用多個框架進行GUI 設計。相反,請考慮使用如下所述的無模式對話框。

使用無模式對話框的解決方案

此解決方案使用帶有封閉的 JOptionPane 的無模式對話框來顯示倒數計時。 JOptionPane 使用 javax.swing.Timer 偵聽 PropertyChangeEvent。

模型類別 (JOptionTimeTest)

<code class="java">import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.Timer;

/**
 * @see https://stackoverflow.com/a/12451673/230513
 */

public class JOptionTimeTest implements ActionListener, PropertyChangeListener {

    private static final int TIME_OUT = 10;
    private int count = TIME_OUT;
    private final Timer timer = new Timer(1000, this);
    private JDialog dialog = new JDialog();
    private final JOptionPane optPane = new JOptionPane();

    // Main method
    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {

            public void run() {
                new JOptionTimeTest().createGUI();
            }
        });
    }

    // Create GUI and display countdown
    private void createGUI() {</code>

以上是如何使用沒有按鈕的計時器在單獨的視窗中顯示倒數計時?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn