添加了重复子线程“JavaFX应用程序线程”中的java异常
我在使用JavaFx的应用程序中工作,我想在myStackPane
中复制我的组件,但我有一个错误/异常
final Button file = new Button("fichier");
file.setGraphic(new ImageView("/images/file.png"));
final Image fichier_img = new Image("/images/file.png");
final StackPane paint = new StackPane();
ile.setOnAction(new EventHandler<ActionEvent>() {
public void handle(ActionEvent e) {
File fichier = new File();
paint.getChildren().addAll( mes_images[0]);
//fichier.setPositionX(me.getSceneX());
}
});
paint.addEventHandler(MouseEvent.MOUSE_CLICKED,
new EventHandler<MouseEvent>() {
public void handle(MouseEvent e) {
if (e.getButton() == MouseButton.SECONDARY)
menu_gauche.show(paint, e.getScreenX(), e.getScreenY());
}
});
下面是我的错误信息:
Exception in thread "JavaFX Application Thread" java.lang.IllegalArgumentException: Children: duplicate children added: parent = StackPane@658d001a at javafx.scene.Parent$2.onProposedChange(Unknown Source) at com.sun.javafx.collections.VetoableListDecorator.add(Unknown Source)
# 1 楼答案
似乎
mes_images[0]
已经添加到了StackPane
中,这不应该发生。 创建一个新的Image
对象(我猜它是一个图像),并将这个新实例添加到StackPane
中,然后一切都会好起来从javadoc of ^{} 开始: