JavaFX的2.2坐标获取节点(视觉树命中测试)(JavaFX 2.2 get node at c

2019-07-18 10:37发布

我怎样才能得到的名单(或第一个)的控制下鼠标/任意坐标? 我知道WPF有VisualTreeHelper.HitTest,它有可以使用的一个地点,过滤掉所有控件的回调。 是否有JavaFX的类似的东西? (或不同的,我只关心第一个元素在给定的点),我见过很多的信息,获取一个节点的坐标,但对如何通过坐标获取一个节点的信息。

Answer 1:

你可以使用node.impl_pickNode(x,y)

从文档impl_pickNode方法(从复制的源 )。

/** 
 * Finds a top-most child node that contains the given coordinates.
 *
 * Returns the picked node, null if no such node was found.
 *
 * @deprecated This is an internal API that is not intended for use 
 *             and will be removed in the next version. 
 **/
public final Node impl_pickNode(double parentX, double parentY)

仔细注意在注释中的废弃警告,在你自己的风险。

更新

有一个在JavaFX的问题跟踪现有的功能要求: FX应提供Parent.pick()例程 。 此功能要求是用于公共API采摘,不会在未来被废弃。 请求的功能被描述为:“该程序可以返回单个节点或Z坐标订购的鼠标下面的所有节点列表”。 该功能没有计划实施,直到“吴建豪”版本是最初JDK8发布后释放(即功能要等到圣诞节2013最早可用)。



文章来源: JavaFX 2.2 get node at coordinates (visual tree hit testing)
标签: java javafx-2