Я разрабатываю приложение JavaFX, которое включает в себя принтеры. Но мне нужно сделать кнопку обновления, чтобы приложение могло обнаруживать недавно созданные или удаленные принтеры (отключенные или подключенные) во время работы приложения.Javafx не обнаруживает изменения доступных принтеров
PS:
Printer.getAllPrinters()
получает то, что я хочу, но для этого нужно приложение, чтобы быть перезапущен до обнаружения изменений, а это значит, что моя кнопка обновления бесполезно.
редактировать 1:
public void updateAvailablePrinters() {
printers = FXCollections.observableArrayList();
ObservableSet<Printer> allPrinters = Printer.getAllPrinters();
allPrinters.forEach(printer -> printers.add(printer)); // printers is a field variable
}
Do у вас есть образец неисправного кода? Выбрасывает ли он какие-либо ошибки (т. Е. Трассировка стека для обмена)? –
@ HEADLESS_0NE добавлены образцы кода –