我正在尝试从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控制台中看到输出,但是applet没有显示图片。 我已经使用Platform.runLater来更新javafx线程中的GUI,但仍然没有执行更新。