Есть код, последовательность операций.
В частности, одна из операций - отобразить окно коммуникации, и - либо получить ответ от пользователя (keyTyped) и закрыть окно, либо закрыть окно по истечении 500 миллисекунд, если ответа нет.
Каким образом отмерить эти 500 мс, оставляя окно функциональным?
Как раз для таких целей есть javax.swing.Timer:
JOptionPane optionPane = new JOptionPane();
Timer timer = new Timer(3000, e -> {
optionPane.setVisible(false);
optionPane.getRootFrame().dispose();
});
timer.setRepeats(false);
timer.start();
int n = optionPane.showConfirmDialog(null, "Hello?", "Demo", JOptionPane.YES_NO_OPTION);
Вот такой вариант с javax.swing.Timer
public class TimeoutFrame extends JFrame {
public static void main(String[] args) {
new TimeoutFrame(2500);
}
public TimeoutFrame(int timeout) {
setLayout(new FlowLayout());
setSize(new Dimension(200,100));
setLocationRelativeTo(null);
add(new JLabel("type key"));
addKeyListener(new KeyAdapter() {
@Override
public void keyTyped(KeyEvent e) {
System.out.println("keyTyped");
dispose();
}
});
Timer timer = new Timer(timeout, e -> {
System.out.println("timeout");
dispose();
});
timer.setRepeats(false);
timer.start();
setVisible(true);
}
}
Должно сработать
new Thread() {
@Override
public void run() {
try {
sleep(500);
//closeWindow
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}.start();
Виртуальный выделенный сервер (VDS) становится отличным выбором
Помогите пожалуйста разобратьсяСтоит задача отправить xml файл используя моё WEB приложение в другое WEB приложение
Подскажите пожалуйста: Есть небольшое корпоративное приложение, с семью вкладками в навигационном менюКаждая вкладка это отдельное активити,...
Какие есть API сервисы для распознания было ли фото отредактировано?