gpt4 book ai didi

java - 在 Hbox 中找到按下的节点的位置

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:29:37 24 4
gpt4 key购买 nike

我有一个包含很多矩形的 Hbox。当我按下 Hbox 中的一个节点时,我希望它告诉我该矩形在 observablelist 中的什么位置,我该如何实现这一点?

下面是一个尝试(但是没有成功)

    figureRowBox.setOnMousePressed(new EventHandler<MouseEvent>() {

@Override
public void handle(MouseEvent event) {
for (Node n : figureRowBox.getChildren()) {
if (n.isPressed()) {
System.out.println(figureRowBox.getChildren().indexOf(n));
}
}
}

});

其中 figureRowBox 是一个 Hbox

最佳答案

这是我用来确定在 HBox 中按下了哪个节点的 HitTest 例程:

final HBox images = new HBox(10);
...
imageView.setOnMousePressed(new EventHandler<MouseEvent>() {
@Override public void handle(MouseEvent mouseEvent) {
final Object selectedNode = mouseEvent.getSource();
final int selectedIdx = images.getChildren().indexOf(selectedNode);

label.setText(
"Selected Vehicle: " + (selectedIdx + 1)
);
}
});

这里是 complete sample code 的链接:

selected vehicle

关于java - 在 Hbox 中找到按下的节点的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16137140/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com