Попытка поместить инвентарь TilePane в прокручиваемую панель - PullRequest
0 голосов
/ 12 мая 2018

Совершенно новый для stackoverflow, поэтому приношу свои извинения за неправильную публикацию.

Я создал систему инвентаря для игры на основе карты сверху вниз. На панели инвентаря отображаются все предметы, которые несет персонаж.

Я создал отдельные HBox с кнопкой удаления элемента, однако я попытался поместить HBox на прокручиваемую панель.

К сожалению, полосы прокрутки, кажется, не появляются. Буду очень признателен за любую помощь.

private void displayInvStructure() {

    this.setVgap(4);
    this.setHgap(4);
    this.setPadding(new Insets(1));
    this.setPrefColumns(4);
    this.setStyle("-fx-background-color: #fff4a8; -fx-padding: 5; -fx-spacing: 5; -fx-border-color: black; -fx-border-width: 2px;");

    HBox itemTile[] = new HBox[31];
    for (int i = 0; i < 31; i++) {
        Button deleteButton = new Button("Delete Item");
        deleteButton.setOnAction((ActionEvent event) -> { //Creates event when button clicked
                JOptionPane.showMessageDialog(null, "Item has been deleted", null, 1);
        });

        itemTile[i] = new HBox(new Label("Item: " + i + "   "));
        itemTile[i].setStyle("-fx-border-color: black;");
        itemTile[i].setPadding(new Insets(5));
        itemTile[i].getChildren().add(deleteButton);
        itemTile[i].setAlignment(Pos.CENTER_LEFT);
        itemTile[i].setStyle("-fx-background-color: #e5efff; -fx-border-color: black;");
        this.getChildren().add(itemTile[i]);

    }
    ScrollPane sp = new ScrollPane();
    sp.setFitToWidth(true);
    sp.setContent(this);

}
...