Элемент JList:изменение вертикального выравнивания
Вопрос
Мое приложение использует JList для отображения числовых значений.
Вот дисплей по умолчанию:
+-----------------+
|value 1 |
|value 2 |
|value 3 |
| |
| |
| |
| |
+-----------------+
Я хотел бы изменить вертикальное выравнивание, чтобы значения отображались в правом нижнем углу кадра, например:
+-----------------+
| |
| |
| |
| |
| value 1|
| value 2|
| value 3|
+-----------------+
Если добавлен новый элемент, он должен отображаться внизу:
+-----------------+
| |
| |
| |
| value 1|
| value 2|
| value 3|
| value 4|
+-----------------+
Список находится внутри JScrollPane, чтобы ограничить количество отображаемых элементов.
Это выполнимо?Или мне придется использовать другой компонент?
Решение
В качестве хака вы можете поиграть с границей JList.Когда список пуст, вы устанавливаете размер границы так, чтобы он занимал все пространство списка.Когда вы добавляете строку, вы уменьшаете вставки Border.top на размер строки.
Не связан с StackOverflow