В настоящее время я изучаю новые функции Java JDK 8u40, и должен сказать, что мне очень нравится встроенный диалог. По сравнению с ControlsFX фоновый эффект отсутствует, когда диалог открыт (ControlsFX заставил фон выглядеть темнее). Я также хотел бы сделать это с новым диалоговым классом в JavaFX. Я использую следующий код:JavaFX: применить фоновый эффект, когда диалог открыт
TextInputDialog dialog = new TextInputDialog();
dialog.initOwner(null);
dialog.initStyle(StageStyle.UNDECORATED);
dialog.setHeaderText(“Please fill in a new number“);
dialog.setContentText(“New number:”);
//Check if the optional is filled in
Optional<String> newAmount = dialog.showAndWait();
if (result.isPresent()){
System.out.println(“New number: " + result.get());
}
Я не нашел полезных частей в классе диалога. Я попробовал этот код, но это немного Hacky, и немного медленно:
myMainFlowPane.setOpacity(0.5);
// ..... dialog code ..... //
myMainFlowPane.setOpacity(1.0);
Вы должны сказать, что должен быть способ сборки в течение этого. Кто-нибудь из вас знает, как это сделать?
Любая помощь очень ценится!
Я снова проверял этот ответ, и он работает. Тем не менее, он все еще немного медленный. Медленно, чем хотелось бы. – bashoogzaad
Для меня это прекрасно работает. Если он медленный, как насчет того, чтобы добавить некоторый эффект затухания в/из в параллельный слой? –