1

我正在尝试从 javascript 对象调用一个方法,该对象又调用以下 java 方法:

public void loadPicture(final String absolutePath) {

  System.out.println("loadPicture " + absolutePath);
  Image dbimage;
  dbimage = new Image(absolutePath, 100.0d, 100.0d, false, false);
  final ImageView dbImageView = new ImageView();
  dbImageView.setImage(dbimage);


  Platform.runLater(new Runnable() {
    @Override
    public void run() {
      try {
        System.out.println("hbox children : "+hbox.getChildren().size());
        hbox.getChildren().add(dbImageView);
        System.out.println("hbox children : "+hbox.getChildren().size());
        //test
        //logger.debug(" aggiunto "+absolutePath);

        DropPictures.getPicturesNames().add(absolutePath);

      } catch (Exception e) {
        System.out.println("eccezione :" + e.getLocalizedMessage());
      }

    }
  });

}

在 javascript 中,方法调用是:

var a = document.getElementById(myDivId);
a.loadPicture();

我已经跟踪了执行,上面的方法没有抛出任何异常,但是它正在运行,因为我在 java 控制台中看到了输出,但小程序没有显示图片。我已经使用 Platform.runLater 在 javafx 线程中更新了 GUI,仍然没有执行更新。

4

0 回答 0