for (final Series<String, Number> series : chart.getData()) { for (final Data<String, Number> data : series.getData()) { Tooltip tooltip = new Tooltip(); tooltip.setText(data.getYValue().toString()); Tooltip.install(data.getNode(), tooltip); } }
Tooltip t = new Tooltip(); Tooltip.install(yournode, t); t.setOnShowing(ev -> {// called just prior to being shown Point mouse = java.awt.MouseInfo.getPointerInfo().getLocation(); Point2D local = yournode.screenToLocal(mouse.x, mouse.y); // my app-specific code to get the chart's yaxis value // then set the text as I want double pitch = yaxis.getValueForDisplay(local.getY()).doubleValue(); double freq = AudioUtil.pitch2frequency(pitch); t.setText(String.format("Pitch %.1f: %.1f Hz %.1f samples", pitch, freq, audio.rate / freq)); });
Tooltip t = new Tooltip(); Tooltip.install(yournode, t); t.setOnShowing(ev -> {// called just prior to being shown Point mouse = java.awt.MouseInfo.getPointerInfo().getLocation(); Point2D local = yournode.screenToLocal(mouse.x, mouse.y); // my app-specific code to get the char's yaxis value // then set the text as I want double pitch = yaxis.getValueForDisplay(local.getY()).doubleValue(); double freq = AudioUtil.pitch2frequency(pitch); t.setText(String.format("Pitch %.1f: %.1f Hz %.1f samples", pitch, freq, audio.rate / freq)); });
Tooltip t = new Tooltip(); Tooltip.install(yournode, t); t.setOnShowing(ev -> {// called just prior to being shown Point mouse = java.awt.MouseInfo.getPointerInfo().getLocation(); Point2D local = yournode.screenToLocal(mouse.x, mouse.y); // my app-specific code to get the chart's yaxis value // then set the text as I want double pitch = yaxis.getValueForDisplay(local.getY()).doubleValue(); double freq = AudioUtil.pitch2frequency(pitch); t.setText(String.format("Pitch %.1f: %.1f Hz %.1f samples", pitch, freq, audio.rate / freq)); });
tooltip.setText(original);
Tooltip mousePositionToolTip = new Tooltip(""); gridPane.setOnMouseMoved(new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent event) { String msg = "(x: " + event.getX() + ", y: " + event.getY() + ")\n(sceneX: " + event.getSceneX() + ", sceneY: " + event.getSceneY() + ")\n(screenX: " + event.getScreenX() + ", screenY: " + event.getScreenY() + ")"; mousePositionToolTip.setText(msg); Node node = (Node) event.getSource(); mousePositionToolTip.show(node, event.getScreenX() + 50, event.getScreenY()); } });
Button button = new Button(); button.setText("Hover Me!"); Tooltip tt = new Tooltip(); tt.setText("Text on Hover"); tt.setStyle("-fx-font: normal bold 30 Langdon; " + "-fx-base: #AE3522; " + "-fx-text-fill: white;"); button.setTooltip(tt);
ComboBox<Button> lights = new ComboBox<>(); Button light1 = new Button("First Item"); Tooltip hoveredTip1 = new Tooltip(); hoveredTip1.setContentDisplay(ContentDisplay.LEFT); hoveredTip1.setText("You are hovering combobox's first item"); light1.setTooltip(hoveredTip1);
color.getGreen(), color.getBlue()); tooltip.setText(text); });
final Button helpButton = new Button("Help"); helpButton.setOnAction(new EventHandler() { public void handle(Event arg0) { showTooltip(stage, helpButton, "test tool tip", null); } }); public static void showTooltip(Stage owner, Control control, String tooltipText, ImageView tooltipGraphic) { Point2D p = control.localToScene(0.0, 0.0); final Tooltip customTooltip = new Tooltip(); customTooltip.setText(tooltipText); control.setTooltip(customTooltip); customTooltip.setAutoHide(true); customTooltip.show(owner, p.getX() + control.getScene().getX() + control.getScene().getWindow().getX(), p.getY() + control.getScene().getY() + control.getScene().getWindow().getY()); }
for (Data<Number, Number> d : series.getData()) { d.getNode().setOnMouseEntered(event -> { tooltip.setText(String.format("[%d, %.3f]", d.getXValue().intValue(), d.getYValue().doubleValue())); Bounds nodeBounds = d.getNode().getBoundsInLocal(); Bounds nodeBoundsInScreen = d.getNode().localToScreen(nodeBounds);
setTooltip(null); } else { tooltip.setText(person.getFirstName()+" "+person.getLastName()); setTooltip(tooltip);