0

私は2000のデータを持っています。実行時にjavafx2.2の選択ボックスにデータをバインドしたい。データを選択ボックスにバインドすると、その表示が表示されます

java.lang.RuntimeException:java.lang.reflect.InvocationTargetException

例外が発生し、アプリケーションがハングします。提案をお願いします。

4

1 に答える 1

0

同じバインディングは、より小さなデータセットでも機能しますか?

次のコードは私のために働きます。ただし、ポップアップが最初に表示されるまでに1〜2秒の遅延があります。

public class DoHugeChoiceBox extends Application {
    @Override
    public void start(Stage stage) {
        ObservableList<String> list = FXCollections.<String>observableArrayList();
        for (int i = 0; i < 2000; i++) {
            list.add("item " + i);
        }
        ChoiceBox cb = new ChoiceBox(list);
        cb.getSelectionModel().select(1000);

        HBox g = HBoxBuilder.create().children(cb).build();
        stage.titleProperty().bind(cb.valueProperty());

        stage.setScene(new Scene(g));
        stage.setHeight(100);
        stage.setWidth(200);
        stage.show();
    }

    public static void main(String[] args) { launch(); }
}
于 2012-10-30T08:59:22.030 に答える