Вы ищете способ представить список в JavaFX приложении? В этом руководстве вы научитесь, как с помощью ListView создать простой, но эффективный пользовательский интерфейс создать, который позволит вам выбрать различные объекты. Мы рассмотрим, как вставлять элементы списка, производить выбор и отображать выбранные элементы.
Основные выводы
- ListView позволяет отобразить список элементов.
- Вы можете добавлять элементы в ObservableList, чтобы гарантировать, что отображение будет обновляться автоматически.
- Выбор элементов может осуществляться различными способами, например, с помощью множественного выбора.
- Изменения выбора могут отслеживаться динамически с помощью слушателей.
Пошаговое руководство
Шаг 1: Создание ListView
Начните с создания нового проекта JavaFX. В вашем интерфейсе добавьте ListView, при этом важно, чтобы вы импортировали необходимые библиотеки. ListView позволит вам отображать разнообразные строки. Вы создаете ListView следующим образом:

Шаг 2: Инициализация ObservableList
Чтобы отобразить элементы, вам потребуется ObservableList. Этот список будет содержать строки, которые должны отображаться в вашем ListView. Убедитесь, что вы корректно импортировали и инстанцировали ObservableList. Вы назовете этот список items:

Шаг 3: Добавление элементов в список
Теперь вы можете добавлять отдельные элементы в ваш ObservableList. Просто добавьте дублирующие строки, такие как «Собака», «Кошка», «Мышь» и «Пикачу». Важно следить за правильностью ввода строк (обратите внимание на правильное написание):
Шаг 4: Отображение элементов в ListView
После того, как вы заполнили свой список элементами, настало время отобразить их в ListView. Теперь настройте ListView так, чтобы он использовал список items для отображения содержимого:
Шаг 5: Добавление метки
Теперь добавьте метку, которая будет отображать выбор пользователя. Текст метки может быть, например, «Пожалуйста, выберите один из объектов». Метка поможет вам отображать ввод пользователя прямо:

Шаг 6: Разрешение множественного выбора
По умолчанию пользователь может выбрать только один элемент одновременно. Однако, если вы хотите, чтобы пользователь мог выбирать несколько элементов, вам нужно настроить SelectionModel вашего ListView. Установите режим выбора на множественный:
Шаг 7: Добавление слушателя для выбора
Чтобы динамически отслеживать выбранные элементы, интегрируйте ChangeListener. Этот слушатель будет следить за изменениями выбора и обновлять метку с текущим выбранным элементом. Вы должны убедиться, что у слушателя есть необходимые импортируемые инструкции:

Шаг 8: Динамическое отображение выбора
Наконец, измените текст метки так, чтобы он отображал текущий выбранный элемент. Таким образом, пользователь всегда будет знать, какой элемент он выбрал. При каждом изменении текст метки будет обновляться соответствующим образом:

Шаг 9: Тестирование и верификация
Запустите программу и проверьте, работает ли все, как надо. Убедитесь, что множественный выбор и обновление метки проходят гладко. Если есть возможность, откройте консоль на наличие сообщений об ошибках, которые могли бы указать на проблемы:

Резюме – JavaFX ListView – Создайте интерактивный список для вашего GUI
В заключение, вы узнали, как реализовать и настроить ListView в JavaFX в этом руководстве. Вы увидели, как создать ObservableList, добавлять элементы, разрешать множественный выбор и отслеживать изменения с помощью слушателя. Теперь вы готовы создать собственный пользовательский интерфейс с ListViews!
Часто задаваемые вопросы
Что такое ListView в JavaFX?ListView — это элемент управления, который отображает список элементов, которые могут выбирать пользователи.
Как создать ObservableList?Вы можете создать ObservableList, используя FXCollections.observableArrayList() и добавляя нужные элементы.
Как я могу активировать множественный выбор в ListView?Вы должны установить SelectionModel вашего ListView в режим multiple.
Как я могу отслеживать изменения выбора?Это достигается путем добавления ChangeListener к вашему SelectionModel.
Каковы преимущества ObservableLists?Они обновляются автоматически, когда элементы добавляются или удаляются, и хорошо работают с элементами GUI JavaFX.