Sto cercando di creare un gioco semplice (è un lavoro scolastico) in JavaFX e sto cercando di svuotare il pannello con la scheda e quindi ridipingerlo. Ho provato un sacco di metodi, e questo è l'unico che ho trovato che rimuove tutti i pezzi della scheda (visivamente) senza creare un bug visivo che mostri un pezzo che è già stato cancellato ma che viene comunque mostrato.Pulire gridPane in JavaFX e mantenere la riga Grid
Quindi dichiaro il gridPane
in questo modo:
private GridPane gridPecas;
@Override
public void start(Stage primaryStage)
{
gridPecas = new GridPane();
gridPecas.setGridLinesVisible(true);
paintBoard();
// rest of the code to create and paint the Stage
}
private void paintBoard()
{
gridPecas.getChildren().clear();
// Code to fill the board with ImageView and Images of the pieces
}
Il problema con questo metodo, è che quando i "gridPecas.getChildren() Clear();" Si chiama I just loose the grid lines dal GridPanel
.
Come posso risolvere questo problema?
Grazie per le vostre risposte, ma ho appena trovato la soluzione perfetta xD Invece di fare "gridPecas.getChildren(). Clear();" Lo faccio solo nel ciclo for: "gridPecas.getChildren(). RemoveAll (pecasFX [i] [j]);" Così, quando legge il pezzo, lo cancella dalla griglia e, grazie al codice originale "scheda di riempimento", ne ha preso uno nuovo lasciando il bordo pulito e aggiornato. – aliasbody