Я могу сбросить эту программу с помощью кнопки сброса. Но я действительно хочу использовать «Timer», TimerTask (?) Или ScheduledExecutor () для автоматического сброса в полночь.
public class ResetWindow extends JFrame {
private JPanel contentPane;
private void closewindow() {
WindowEvent winClosingEvent = new WindowEvent(this,WindowEvent.WINDOW_CLOSING);
Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(winClosingEvent);
}
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
ResetWindow frame = new ResetWindow();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public ResetWindow() {
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(0, 0));
setContentPane(contentPane);
JButton btnResetWindow = new JButton("reset window");
btnResetWindow.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
closewindow();
ResetWindow reset = new ResetWindow();
reset.setVisible(true);
reset.setAlwaysOnTop(true);
}
});
contentPane.add(btnResetWindow, BorderLayout.NORTH);
}
}