Как получить отображаемая высота подъема инструментов (не подсказка.JAVA

Программисты JAVA общаются здесь
Anonymous
Как получить отображаемая высота подъема инструментов (не подсказка.

Сообщение Anonymous »

Я хочу отобразить подсказку при нажатии на одну кнопку. src = "https://i.sstatic.net/oldryom1.png"/>
Я рассчитываю координаты точки B by:

Код: Выделить всё

B.y = (Button.minY + Button.maxY) / 2 - Tooltip.height / 2
Я обнаружил, что значение, полученное с помощью tooltip.getheight () , больше, чем фактическая высота отображаемой подсказки.

Код: Выделить всё

tooltip.getHeight()
кажется высотой окна, но я действительно хочу, чтобы высота отображаемого наконечника.

. Метод: < /p>

Код: Выделить всё

public void showTooltip(Button btn) {
btn.setOnAction(event -> {
Tooltip tooltip = new Tooltip();
tooltip.setText("TestTooltip");
tooltip.setAutoHide(true);
tooltip.setOnShown(windowEvent -> {
Point2D anchor = anchor(btn, tooltip);
tooltip.setX(anchor.getX());
tooltip.setY(anchor.getY());
});
tooltip.show(btn.getScene().getWindow());
});
}

private static Point2D anchor(final Node node, final Tooltip tooltip) {
final Bounds bounds = node.localToScreen(node.getBoundsInLocal());
final double tipHeight = tooltip.getHeight();
final int xOffset = 2;

double x = bounds.getMaxX() + xOffset;
double y = (bounds.getMinY() + bounds.getMaxY()) / 2 - tipHeight / 2;
// Not Correct
System.out.println(tipHeight);

return new Point2D(Math.max(x, 0), Math.max(y, 0));
}



Подробнее здесь: https://stackoverflow.com/questions/796 ... -getheight

Вернуться в «JAVA»