Je souhaite afficher (charger) un menu lorsque la souris se trouve sur le bord de l'écran et masquer (supprimer) lorsque la souris s'éloigne du bord de l'écran écran. J'essaye de réaliser ce qui est vu dans cette vidéo https://www.youtube.com/watch?v=5GsdaZWDcdY (avancer 6 minutes).JavaFX Afficher le menu lorsque la souris arrive au bord de l'écran
Fonctionne correctement lorsque l'écran Welcome.fxml n'a aucun enfant positionné sur le bord de l'écran. Cependant, lorsque la souris passe sur l'un des nœuds enfants, il arrête de lire les coordonnées X, Y sur le StackPane (base). Je ne peux pas utiliser la souris transparente car certains des nœuds enfants sont des boutons qui doivent utiliser des événements de souris.
Appréciez toutes les suggestions ou ressources pour référence qui peuvent m'aider à réaliser ceci. Merci.
public class principal étend l'application {
StackPane base = new StackPane();
@Override
public void start(Stage stage) throws Exception {
Parent root = FXMLLoader.load(getClass().getResource("Welcome.fxml"));
base.getChildren().add(root);
Scene scene = new Scene(base);
stage.setScene(scene);
stage.show();
VBox menu = FXMLLoader.load(getClass().getResource("Menu.fxml"));
base.setOnMouseMoved((event) -> {
if (event.getScreenX() < 40) {
if (!base.getChildren().contains(menu)) {
base.getChildren().add(menu);
base.setAlignment(menu, Pos.TOP_LEFT);
}
} else {
if (base.getChildren().contains(menu)) {
base.getChildren().remove(menu);
}
}
});
}