Есть SplitPane, в которую я вложил TableView. И появляются некоторые вопросы.
1. TableView должна подстраиваться под разные типы объектов (в настоящий момент 3, планирую больше). После переключения на одну из вкладок TreeView генерируется стирается предыдущая и генерируется новая таблица на одном и том же TableView. Это хорошее решение или возможно его как-то улучшить/изменить?
2. Окрашивание строк. Я хочу залить строки цветом лишь той таблицы, которая соответствует только одному из моих объектов. Но "окрашиватель" идёт на каждую таблицу и постоянно генерирует исключение несовместимости объектов. Может, я допускаю ошибку при реализации окрашивателя?
tableView.setRowFactory(rows -> new TableRow<MyClass>() {
@Override
protected void updateItem(MyClass item, boolean empty) {
TreeItem<String> nValue = (TreeItem<String>) treeView.getSelectionModel().getSelectedItem();
if (nValue.getValue().equals("String")) {
if (item != null) {
if (!item.isActive()) {
setStyle("-fx-background-color: darkorange; -fx-text-background-color: black;");
} else {
setStyle("-fx-background-color: white; -fx-text-background-color: black;");
}
}
}
super.updateItem(item, empty);
}
});
3. Всё тот же окрашиватель. По идее, он должен менять цвет строки при нажатии на неё(потому что item.isActive меняет своё значение при нажатии), но такого не происходит. и я немного не понимаю, почему так происходит. Что тут не так?
Уточните этот момент, не совсем понятно.
UPDATE. Судя по комментарию, что у вас разные классы MyClass1, MyClass2 и тд и тп., необходимо
Приведите код, потому что тоже не совсем понятно
Вся суть в том, что в методе updateItem(MyClass item, boolean empty)
вам сначала необходимо вызвать super.updateItem(item, empty)
, а уже потом писать свою логику.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
Написать функцию, которая принимает три параметра n1, n2 и n3 где число n1 – стартовое число массива, n2 - количество элементов массива, n3 – количество...
На данный вопрос уже ответили: