Comment créer et afficher boîte de dialogue commune (Erreur, Avertissement, Confirmation) JavaFX 2.0?
Comment puis-je créer et afficher des boîtes de dialogue communes (Erreur, Avertissement, Confirmation) JavaFX 2.0? Je ne trouve pas de "standard" des classes comme Dialog
, DialogBox
, Message
ou quelque chose.
- Peut-être que vous voulez jeter un œil sur le projet pour l'usage privé: github.com/4ntoine/JavaFxDialog/wiki
- Backport de JavaFX 8 boîtes de dialogue pour JDK7: github.com/BertelSpA/openjfx-dialogs-jdk7
Vous devez vous connecter pour publier un commentaire.
Récemment publié JDK 1.8.0_40 ajouté support de JavaFX boîtes de dialogue, alertes, etc. Par exemple, pour afficher une boîte de dialogue de confirmation, on peut utiliser l'Alerte de classe:
Voici une liste de l'ajout des classes dans cette version:
alert.setHeaderText("header text");
si c'est ce que vous avez besoinMODIFIER: boîte de dialogue de soutien a été ajouté à JavaFX, voir https://stackoverflow.com/a/28887273/1054140
Il n'y avait pas de dialogue commune de soutien dans l'année 2011.
Vous avez eu à l'écrire vous-même par la création de
new Stage()
:Mise à jour
Officiel les boîtes de dialogue standard sont à venir pour JavaFX dans la version 8u40, dans le cadre de la mise en oeuvre de RT-12643. Ces documents doivent être disponibles dans la version finale du formulaire de autour de Mars 2015 et sous forme de code source dans en Charge le développement du référentiel maintenant.
En attendant, vous pouvez utiliser le ControlsFX solution ci-dessous...
ControlsFX est le standard de facto de la 3e partie de la bibliothèque pour la commune de la boîte de dialogue support de JavaFX (erreur, avertissement, confirmation, etc).
Il existe de nombreux autres 3ème partie de bibliothèques qui offrent un terrain de dialogue de soutien comme l'a souligné dans certains autres réponses et vous pouvez créer vos propres boîtes de dialogue assez facilement à l'aide de l'exemple de code dans Sergey réponse.
Cependant, je crois que ControlsFX facilement fournir le meilleur standard de qualité JavaFX dialogues disponible pour le moment. Voici quelques échantillons de la ControlsFX documentation.
Sergey est correct, mais si vous avez besoin d'obtenir une réponse à partir de votre propre boîte de dialogue(s) de l'évaluation dans le même bloc de code qui a appelé, vous devez utiliser .showAndWait(), pas .show(). Voici ma version d'un couple de la boîte de dialogue types qui sont fournies dans le Swing de OptionPane:
}
Adapté de réponse ici: https://stackoverflow.com/a/7505528/921224
javafx.de la scène.de contrôle.Alerte
Pour une description détaillée de la façon d'utiliser JavaFX boîtes de dialogue, voir: JavaFX boîtes de dialogue (officiel) par le code.makery. Ils sont beaucoup plus puissant et flexible que le Swing et les boîtes de dialogue capable de beaucoup plus que de sauter juste en haut de messages.
Une chose à garder à l'esprit est que JavaFX est un seul thread GUI toolkit, ce qui signifie que cette méthode doit être appelée directement à partir de la JavaFX application thread. Si vous avez un autre thread qui effectue des travaux, qui a besoin d'un dialogue et de voir ensuite ces DONC Q&Comme: JavaFX2: puis-je interrompre une Tâche en arrière-plan /Service? et La plate-forme.Runlater et Tâche de Javafx.
D'utiliser l'appel de cette méthode:
ou
Cela fonctionne depuis java 8u40:
Platform.runLater()
ou similaire)Vous pouvez donner de la boîte de dialogue qui est donné par la JavaFX des Contrôles d'INTERFACE utilisateur Projet. Je pense que ça va vous aider à