java 定时关闭_java swing 窗口不用时定时关闭
时间: 2023-09-12 17:05:15 浏览: 170
你可以使用`javax.swing.Timer`类来实现定时关闭Java Swing窗口的功能。下面是一个示例代码:
```java
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.Timer;
public class AutoCloseFrame extends JFrame {
private static final long serialVersionUID = 1L;
private static final int AUTO_CLOSE_DELAY = 5000; // 5秒钟后自动关闭
private Timer timer;
public AutoCloseFrame() {
setTitle("自动关闭窗口示例");
setSize(400, 300);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
timer = new Timer(AUTO_CLOSE_DELAY, new ActionListener() {
public void actionPerformed(ActionEvent e) {
dispose(); // 关闭窗口
}
});
timer.setRepeats(false); // 只运行一次
timer.start();
}
public static void main(String[] args) {
AutoCloseFrame frame = new AutoCloseFrame();
frame.setVisible(true);
}
}
```
在上面的示例代码中,我们创建了一个`javax.swing.Timer`对象来定时关闭窗口。在构造函数中,我们设置了窗口的标题、大小、位置和默认关闭操作。然后创建了一个`Timer`对象,并使用`setRepeats(false)`方法设置为只运行一次。最后,我们启动了定时器并让窗口可见。
当定时器运行时,它会触发`actionPerformed()`方法,该方法关闭窗口。您可以根据需要调整`AUTO_CLOSE_DELAY`常量的值来更改窗口关闭的时间。
阅读全文