I have a GridPane filled with 1 letter inscriptions.
Here is the image:

Here is the code:
int charSpacing = 1; int charsInWidth = 28; int charsInHeight = 16; double charWidth = 15; double charHeight = 20; GridPane gp = new GridPane(); gp.setAlignment(Pos.CENTER); Label[] tmp = new Label[charsInHeight*charsInWidth]; String text = "W"; int currArrPos = 0; for(int y = 0; y < charsInHeight; y++) { HBox hbox = new HBox(charSpacing); for(int x = 0; x < charsInWidth; x++) { tmp[currArrPos] = new Label(text); tmp[currArrPos].setTextFill(Paint.valueOf("white")); tmp[currArrPos].setMinHeight(charHeight); tmp[currArrPos].setMinWidth(charWidth); tmp[currArrPos].setMaxHeight(charHeight); tmp[currArrPos].setMaxWidth(charWidth); tmp[currArrPos].setStyle("-fx-border-color: white;"); hbox.getChildren().add(tmp[currArrPos++]); if(x%2 == 0){ text = "I"; } else{ text = "W"; } } gp.add(hbox, 1, y); } guiDisplay.getChildren().add(gp);
How can I center the characters?
I put them in the HBox and gave them an interval. I tried to make textAlignment labels for CENTER , but this of course does not work.
I tried this as well:
gp.setAlignment(Pos.CENTER);
Does anyone have an idea? Thanks!
source share