Заодно воскресил в своей памяти JavaFX.
Рубрика: java
javafx RowFactory или как я красил строки таблицы.
Примеров решений задачи в инете, вагон и маленькая тележка.
Обычно рекомендуют что то типа такого:
tableView.setRowFactory((row) -> {
return new TableRow
@Override
public void updateItem(MainTable item, boolean empty){
super.updateItem(item, empty);
if (item == null || empty) {
setStyle(«»);
} else {
Iterator
while (it.hasNext()) {
Long zakazIndex = it.next().getProductIndex();
Long pIndex = item.getIndex();
if ( Objects.equals(zakazIndex, pIndex) ) {
setStyle(«-fx-background-color:lightgreen»);
}
}
}
}
};
});
И оно даже работает. Но, пока в таблице не включается скроллинг. Как только в таблице начинаешь листать страницы, с удивлением обнаруживаешь, что красятся произвольные строки, в произвольном порядке.
Решение, простое.
До вызова
super.updateItem(item, empty);
Сбросьте стили.
tableView.setRowFactory((TableView
return new TableRow
@Override
public void updateItem(MainTable item, boolean empty){
// Сначала обязательно сбрасываем стиль.
setStyle(«»);
// и только после этого вызываем метод super.updateItem
super.updateItem(item, empty);
if (item == null || empty) {
setStyle(«»);
} else {
Iterator
while (it.hasNext()) {
Long zakazIndex = it.next().getProductIndex();
Long pIndex = item.getIndex();
if ( Objects.equals(zakazIndex, pIndex) ) {
setStyle(«-fx-background-color:lightgreen»);
}
}
}
}
};
});
JavaFX и java.lang.nullpointerexception location is required
java.lang.nullpointerexception location is required
Не грузит сволочь fxml файл.
Облазил все форумы, пробовал и через class.getClassLoader().getResource() и просто class.getResource(). Читаю документацию, указываю пути как надо, с учетом выбранного метода. Не работает хоть тресни.
А всего то, надо было подписать приложение… твою едрить через это самое…
alfresco и OO
Вот нарвались, так нарвались на неприятности 🙁
Оказывается alfresco прежде чем индексировать любой документ, пропускает его через Open Office. Мы его у себя отключили 🙁 поскольку жрал много процессорного времени. А потом удивлялись, почему это документы в области есть, а в поиске их не видно 🙂 ?
Включили ОО обратно, альфреска проиндексировала все документы, которые были введены до этого.
Придется что то делать с оптимизацией ОО, что бы меньше ресурсов кушал.