JavaFX检测是否已将形状分配给Region / Parent / Node

时间:2015-07-13 04:27:51

标签: javafx javafx-2 javafx-8 region

标题查询是可能

例如。假设我有一个扩展Shape

的自定义类
private class CR extends Rectangle{
    public CR(){}
} 
CR cr = new CR(); //normal rectangle
Pane pane = new Pane();// my node who extends region
pane.setPrefSize(100.0,100.0);
pane.setShape(cr); // here is what i am interested in 

我想知道cr何时被设置为Node,是否有任何绑定,或者我可以通知任何方式?

总结我有两个问题

  • 当您将自定义Shape类设置为Region时,有没有办法检测绑定或某些逻辑。

  • 我可以参考Node / Region / Parent吗?

编辑:

我不认为/我没有 - 访问要将其形状设置为自定义形状的窗格或节点 - (实现我的形状),类似于我的类是库/包装器。

我的自定义Shape也没有延伸Rectangle,但仅仅是为了示例,但我正在使用扩展Path扩展Shape以绘制复杂的Shape < / p>

如果有可能我将赠送300作为礼物的赏金

2 个答案:

答案 0 :(得分:0)

boolean check = pane.contains(cr .getX(),cr .getY());

答案 1 :(得分:0)

我并不完全清楚你在问什么,但确实如此:

cr.parentProperty().addListener((obs, oldParent, newParent) -> {

    System.out.println("Parent changed from "+oldParent+" to "+newParent);

    if (newParent != null) {
        // do whatever you need here...
    }
});

做你需要的吗?