0

JavaFx2のListViewを少し操作しています。私は1つの問題に直面しています。ListCell / ListViewのクリッピングをオフにすることは可能ですか?ListViewよりも幅が広い必要があるImageViewを追加すると、JavaFx2は自動的にスクロールバーを表示します。

この私のコードは、ImageViewをリストに追加する方法を切り取ったものです。

     list.setCellFactory(new Callback<ListView<String>, ListCell<String>>() {
        @Override
        public ListCell<String> call(ListView<String> param) {
            final ListCell<String> blub = new ListCell<String>() {

                @Override
                protected void updateItem(String item, boolean empty) {
                    super.updateItem(item, empty);
                    if (item != null) {
                        StackPane p = new StackPane();
                        Label label = new Label(item);
                        p.getChildren().addAll(img, label);
                        setGraphic(p); 
                        p.setAlignment(Pos.CENTER_LEFT); 

                    }
                }
            };
            blub.setStyle("-fx-background-color:transparent");

            return blub;
        }
    });

本当にありがとう!

4

1 に答える 1

1

ありえないと思います。

ListView のスキンで遊んでみてください。スクロールバーはこのクラスで管理されているようです。スクロール ペインは使用しません。

もう 1 つの解決策は、ListView を ScrollPane の VBox に置き換えることです。

最後に、img必要なものだけを表示するように (ちなみに、それがどこから来て、どのクラスなのですか?) 変更を試みることができます。

とにかく、私はあなたが使用するソリューションに興味があります。

于 2012-07-26T16:52:47.473 に答える