JavaFX Tableview sort java. sql. Столбец даты с нулевым значением внизу в порядке возрастания - PullRequest
2 голосов
/ 29 мая 2020

У меня есть столбец, содержащий java. sql .Date, и я хочу, чтобы он помещал нули внизу в порядке возрастания:

enter image description here

Прямо сейчас они оказываются на вершине.

 followupCol.setCellFactory((TableColumn<DisabilityCase, Date> p) ->
        {
            TableCell<DisabilityCase, Date> cell = new TableCell<DisabilityCase, Date>()
            {
                @Override
                protected void updateItem(Date item, boolean empty)
                {
                    super.updateItem(item, empty);
                    if (item == null || empty)
                    {
                        setText(null);
                    } else
                    {
                        if (!LocalDate.now().isBefore(item.toLocalDate()))
                        {
                            setTextFill(Color.RED);
                        } else
                        {
                            setTextFill(Color.BLACK);
                        }

                        setText(new SimpleDateFormat(DATE_FORMAT).format(item));
                    }
                }

            };


            return cell;
        });

1 Ответ

5 голосов
/ 29 мая 2020

Поскольку java.sql.Date уже равно Comparable, вы можете использовать

followupCol.setComparator(Comparator.nullsLast(Comparator.naturalOrder()));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...