如何识别 JavaFX webview 中的 web 操作?

How to identify web actions in JavaFX webview?

我需要捕捉用户在 JavaFX web 视图上执行的点击、拖动、右键单击、双击等操作。如何实现?

您需要在 WebView 上使用 setOnMouseClicked()setOnMouseDragged() 方法。

以下示例在控制台中为每个 Mouse Click 事件打印 Mouse Clicked!

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.web.WebView;
import javafx.stage.Stage;

public class Main extends Application {

    public static void main(String[] args) {
        launch(args);
    }

    @Override
    public void start(Stage primaryStage) throws Exception {
        WebView webView = new WebView();
        webView.getEngine().load("http://www.whosebug.com");
        webView.setOnMouseClicked(event -> System.out.println("Mouse Clicked!"));
        Scene scene = new Scene(webView, 300, 275);
        primaryStage.setTitle("Welcome");
        primaryStage.setScene(scene);
        primaryStage.show();

    }
}