Aquí es link to a solution he creado anteriormente para cuadros de diálogo modales en JavaFX 2.1 La solución crea un escenario modal en la parte superior de la etapa actual y toma acción sobre los resultados de diálogo a través de controladores de eventos para los controles de diálogo.
actualización
La solución vinculados anterior utiliza un enfoque de controlador de eventos con fecha para tomar medidas después de un diálogo fue despedido. Ese enfoque era válido para las implementaciones anteriores a JavaFX 2.2. Para JavaFX 8+ no hay necesidad de ejecutores de eventos, en su lugar, use el nuevo método Stage showAndWait()
. Por ejemplo:
Stage dialog = new Stage();
// populate dialog with controls.
...
dialog.initOwner(parentStage);
dialog.initModality(Modality.APPLICATION_MODAL);
dialog.showAndWait();
// process result of dialog operation.
...
Tenga en cuenta que, para que las cosas funcionen como se espera, es importante para inicializar el propietario de la Etapa y para inicializar la modalidad de la etapa a cualquiera WINDOW_MODAL o APPLICATION_MODAL.
Hay algunos diálogos de IU estándar de alta calidad en JavaFX 8 y ControlsFX, si se ajustan a sus requisitos, le aconsejo usarlos en lugar de desarrollar los suyos propios. Las clases JavaFX Dialog y Alert incorporadas también tienen los métodos initOwner
y initModality
y showAndWait
, de modo que puede establecer la modalidad para ellas como desee (tenga en cuenta que, de forma predeterminada, los diálogos incorporados son de aplicación modal).
La biblioteca ControlsFX ha sido desarrollada para JavaFX versión 8.0 y superior, que se lanzará en el primer trimestre de 2014, por lo que hay que tenerla en cuenta. – bazeusz
@jewelsea ¿hay alguna función de archivado de archivos para javafx 1.3? –
Avinash, lo mejor es hacer una nueva pregunta como una nueva pregunta. JavaFX 1.3 es obsoleto, no aconsejo usarlo. No creo que tenga directamente un FileChooser, aunque es posible que pueda usar un Swing [JFileChooser] (https://docs.oracle.com/javase/8/docs/api/javax/swing/JFileChooser.html) con eso. – jewelsea