0

画像で構成される TilePane があります。タイルペイン内の画像は、ユーザーが選択したフォルダー内の画像の数によって異なります。しかし、タイルペインにスクロールペインがなかったので、タイルペインをスクロールペイン内に配置することにしましたが、スクロールペインの高さを制御してページ全体を占めることができません。

    public ScrollPane viewGallery(Stage stage)
    {
        ScrollPane root = null;
        final TilePane tile = new TilePane();
        try{

            root = new ScrollPane();
            tile.setPadding(new Insets(5, 5, 5, 5));
            tile.setVgap(4);
            tile.setHgap(4);
            tile.setPrefHeight(stage.getHeight());
            tile.setStyle("-fx-background-color: DAE6F3;");
            File[] listOfFiles = outputFolder.listFiles();
            System.out.println(outputFolder.listFiles().length);

            for (File file : listOfFiles) {

                System.out.println(file.getPath());
                Image image = new Image("file:"+file.getPath());
                ImageView iv2 = new ImageView();
                iv2.setImage(image);
                iv2.setFitWidth(250);
                iv2.setPreserveRatio(true);
                iv2.setSmooth(true);
                iv2.setCache(true);
                tile.getChildren().add(iv2);
            }

        }catch(Exception e)
        {
            e.printStackTrace();
        }

        root.setHbarPolicy(ScrollPane.ScrollBarPolicy.NEVER);    // Horizontal scroll bar
        root.setVbarPolicy(ScrollPane.ScrollBarPolicy.AS_NEEDED);    // Vertical scroll bar
        root.setFitToHeight(true);
        root.setFitToWidth(true);
        root.setContent(tile);      
        return root;
    }

出力は何か人生です..ここに画像の説明を入力

4

1 に答える 1