private void changeStyleOnHover(Node node) { node.setOnMouseEntered( new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent event) { node.setStyle("-fx-background-color: derive(#0096C9, 30%);"); } }); node.setOnMouseExited( new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent event) { node.setStyle("-fx-background-color: #0096C9"); } }); }
/** * @param node * @return */ public static Tooltip create(Node node) { Tooltip tooltip = new Tooltip(); node.setOnMouseEntered( (MouseEvent event) -> { Point2D p = node.localToScreen( node.getLayoutBounds().getMaxX() / 2, node.getLayoutBounds().getMaxY() + 5); // I position the tooltip at bottom right of the node (see below for // explanation) tooltip.show(node, p.getX(), p.getY()); }); node.setOnMouseExited( (MouseEvent event) -> { tooltip.hide(); }); return tooltip; }
/** * Change the style of a cursor when hovering over a node. Used by the buttons * * @param node */ public void setNodeCursor(Node node) { node.setOnMouseEntered(event -> setCursor(Cursor.HAND)); node.setOnMouseExited(event -> setCursor(Cursor.DEFAULT)); }