我需要知道 - 鼠标在静止状态下延迟超过组件的时间。我的意思是它在节点上保持完全静止多长时间。我没有找到标准方法。谢谢。
答案 0 :(得分:1)
只需使用onMouseMoved
处理程序即可完成此操作;您只需要节省时间并计算差异:
@Override
public void start(Stage primaryStage) {
StackPane root = new StackPane();
root.setOnMouseMoved(new EventHandler<MouseEvent>() {
long lastTriggered = System.currentTimeMillis();
@Override
public void handle(MouseEvent event) {
long t = System.currentTimeMillis();
System.out.println("last moved " + (t - lastTriggered) + "ms ago");
lastTriggered = t;
}
});
Scene scene = new Scene(root, 400, 400);
primaryStage.setScene(scene);
primaryStage.show();
}
您可能希望监听包含节点beinc关闭/图标化的舞台以及... ...