Я пытаюсь указать размер границы для узла JavaFX так, чтобы с масштабированием родительского узла, результирующая граница по-прежнему занимала ту же ширину на экране.
Например, у меня есть
Pane container = new Pane();
Pane nodeWithBorder = new Pane();
nodeWithBorder.getStyleClass().add('my-node');
В моей таблице стилей у меня есть что-то похожее на
.my-node {
-fx-border-width: 2px;
-fx-border-color: red;
...
}
Предполагая, что container
имеет scaleX = scaleY = 1
, результирующая границадля nodeWithBorder
будет отображаться с шириной 2px.
Чего я хотел бы добиться с помощью CSS, так это когда container.setScaleX(2); container.setScaleY(2)
, nodeWithBorder
соответственно масштабируются по размеру, но визуализируются с той же границей в 2 пикселя.
Я могу сделать это программно, указав границу в коде и создав привязку между свойством width и свойствами scale. Поскольку мне нужно сделать это в нескольких местах моего приложения, и не всегда известно, какой уровень в родительском дереве изменяет масштаб, мне было интересно, есть ли способ указать это с помощью своего рода относительной единицы через CSS.