删除后,ImageView仍然可见

时间:2015-04-28 09:04:45

标签: javafx

我正在尝试使用javafx编写网卡游戏,但我遇到了问题。 我编写了一个自己的类CardImageView,它从ImageView扩展,以便我可以在那里保存Card-Object。 我可以将这个CardImageView添加到我的电脑上的主要组和我的“敌人”电脑上,我可以将它从我的电脑上删除。 但是当我试图在我的“敌人”电脑上移除它时,它仍然是可见的(但不是“可互动的”。 对于网络连接,我使用的是一个Task,它通过消息属性为字符串提供命令。

private void onCardRemoved(String msg) {
        System.out.println("CARD REMOVED BY: "+Thread.currentThread());
        String[] params = msg.split(";");
        //Calculating the coordinates of the card on screen
        double x = getWidth() - (Double.parseDouble(params[1])/100*getWidth()+card_width/2);
        double y = getHeight() - (Double.parseDouble(params[2])/100*getHeight()+card_height/2);
        CardImageView toRemove = null;
        System.out.println("To-Remove ("+x+"/"+y+")");
        //searching for the card in my group
        for(Node n :  spielfeld.getChildren()) {
            if(n instanceof CardImageView && n.getLayoutX() == x && n.getLayoutY() == y) {
                toRemove = (CardImageView) n;
                break;
            } 
        }
        //removing the card
        if(toRemove != null) spielfeld.getChildren().remove(toRemove);
    }

0 个答案:

没有答案