Хочу вывести Alert окно, которое будет закрываться после того как выполнится задача из другого класса.
@FXML
private void countAll() {
if (checks.checkAll(dateFrom, dateTo, choiceBox.getValue())) {
int id = checks.choiceID(choiceBox.getValue());
try {
ForThread forThread = new ForThread();
forThread.start();
} catch (Exception e) {
System.out.println("ошибка");
}
}
}
class ForThread implements Runnable{
Thread thrd;
@Override
public void run() {
mylert.setTitle(null);
mylert.setHeaderText(null);
mylert.setResizable(false);
mylert.show(); // тут вызываю алерт окно.
doSomethingExecutableMethod(); //этот метод выполняется очень медленно
mylert.close();
}
public void start() {
System.out.println("Thread started");
if (thrd == null) {
thrd= new Thread(this);
thrd.start();
}
}
если нажимаю ОК(т.е. закрываю это алерт окно кнопкой из нее), до выполнения долгого метода, то ошибки нет. если жду пока сработает mylert.close(); то получаю следующую ошибку.
Not on FX application thread;
Как я понял, этот ранейбл метод не имеет права трогать фрейм приложения. у меня задача вывести алерт, который будет висеть пока не выполнится долгий метод, таким образом дает знать, что метод еще не выполнился...
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Задача: установить выборочно атрибут disabledПеребирал несколько вариантов, не работает ни один
пробую создать первого бота при помощи телеграфа, взял с их гитхаба код: