0
我hava a Pane
它是可縮放的。我想分別縮放這個Pane
中的所有孩子。孩子可以動態添加,所以一旦添加了新的孩子,我正在考慮將孩子的比例屬性綁定到父母的比例屬性,但我不知道如何才能做到這一點。一旦添加新的孩子,JavaFX會將孩子的財產綁定到其父母的財產
我現在只要窗格比例縮放所有的孩子:
public class ZoomableCanvas extends Pane {
DoubleProperty scale = new SimpleDoubleProperty(1.0);
public ZoomableCanvas() {
scaleXProperty().bind(scale);
scaleYProperty().bind(scale);
}
public double getScale() {
return scale.get();
}
public void setScale(double scale) {
this.scale.set(scale);
for (javafx.scene.Node child : getChildren()) {
child.setScaleX(scale);
child.setScaleY(scale);
}
}
public void setPivot(double x, double y) {
setTranslateX(getTranslateX() - x);
setTranslateY(getTranslateY() - y);
}
}
但必須有一個更優雅的方式。我怎樣才能聽取孩子的加入,然後綁定這個屬性?