Я создаю файл fxml в javafx2.OutOfMemoryError и проблемы с ObservableList в ComboBox
У меня есть список объектов Person. Имя этого списка - Entries
. У меня есть ObservableList, myObservableList
. Внутри этого я хочу поставить метки. Каждая метка должна содержать пару изображений лица и текст его имени. я пишу этот код:
for (int i=0; i<numberOfEntries; i++){
currentEntry = Entries.get(i);
name=currentEntry.getName();
image1 = new Image("file:"+currentEntry.getIcon());
imageView1= new ImageView();
imageView1.setFitHeight(50);
imageView1.setFitWidth(70);
imageView1.setImage(image1);
label = new Label(name, imageView1);
label.setFont(new Font("serif", 32));
myObservableList.add(label);
}
Он работает нормально, но после нескольких пут изображений виртуальная машина дает мне ниже сообщение об ошибке:
Caused by: java.lang.OutOfMemoryError: Java heap space.
Эта ошибка происходит из строки кода image1 = new Image("file:"+currentEntry.getIcon());
Наконец, я хочу поместить все элементы myObservableList в элементы ComboBox. По этой причине в методе Initialize контроллера Java Я пишу:
myComboBox.setItems(myObservableList);
ListCell<Label> buttonCell = new ListCell<Label>() {
@Override protected void updateItem(Label item, boolean isEmpty) {
super.updateItem(item, isEmpty);
setText(item==null ? "" : item.getText());
}
};
myComboBox.setButtonCell(buttonCell);
Я уверен, что у меня не хватает опыта в JavaFX, и я не знаю, как я должен обращаться за меня выпадающий с парами значок и текст в одной ячейке для всех элементов.
Я хочу выразить благодарность Питеру Дунихо и ПаккуДон за помощь в улучшении английского языка в моем тексте.
Сколько предметов (приблизительно) в списке? Насколько велики, в среднем, изображения? –
Список получает загрузку с базы данных. У меня есть таблица «Человек» с 8 столбцами.Из этого я прочитал только 2 столбца, имя и имя файла (значка человека). Может быть примерно 200 человек имен и значков. Все это должно загружаться в поле со списком. Каждый значок составляет около 70Kb или 100kb. Я не знаю, как я справляюсь с этим. – Farmer