javafx: как применить событие mousepressed к ImageView (s), которое находится в цикле? - PullRequest
0 голосов
/ 21 сентября 2018

Я создал цикл foreach, который создает ImageView и отображает их с помощью javafx, но каждый найденный ImageView должен иметь событие, подобное нажатой мышью, я уже написал метод, все, что мне нужно знать, эточтобы применить его к мышью ImageView, и я не знаю, как его применить.

код для зацикливания

private void setUpMovieContent() {
    WebResponse response = RequestVideoFromServer.getAllList();
    for (int i = 0; i < response.getMovies().length; i++) {
        String imageUrl = response.getBaseURL() + response.getMovies()[i].getImageUrl();
        Image img = new Image(imageUrl);
        ImageView imgView = new ImageView(img);
        imgView.setFitHeight(350);
        imgView.setFitWidth(230);

        Label lblTitle = new Label();
        lblTitle.setText(response.getMovies()[i].getTitle());
        lblTitle.setFont(Font.font(null,FontWeight.EXTRA_BOLD,20));
        lblTitle.setStyle("-fx-font-size: 18px;");
        lblTitle.setLayoutY(11);
        lblTitle.setLayoutX(20);

        VBox vb = new VBox();
        vb.setLayoutX(5);
        vb.setSpacing(5);
        vb.getChildren().addAll(imgView, lblTitle);

        hBox.getChildren().add(vb);
    }
    sp.setContent(hBox);
    sp.setPrefSize(600,300);
    sp.setHbarPolicy(ScrollPane.ScrollBarPolicy.AS_NEEDED);
    sp.setVbarPolicy(ScrollPane.ScrollBarPolicy.AS_NEEDED);
    stackPane.getChildren().add(sp);

}

1 Ответ

0 голосов
/ 21 сентября 2018
imgView.setOnMousePressed(event -> {
    // process click
});
...