2009-07-07 3 views
0

Я создаю приложение Java, где пользователь может выполнять поиск по списку объектов, которые затем отображаются в окне JEditorPane, используя динамически сгенерированную таблицу, размер которой зависит от количества возвращенных результатов.Выбор элементов в JEditorPane

Затем я хочу разрешить пользователю выбирать и редактировать объекты. (Объекты Java, а не код HTML) Это возможно, или я должен делать что-то совершенно другое? Должен ли я использовать JEditorPane, или я должен использовать другой метод, и как бы я об этом поступил?

Дисплей в вопросе имеет где-то от 1 до 50 (в зависимости от результатов) клеток, которые читают так:

Имя
Текст
изображение объекта
год
флажки для двух булевых переменных, которые являются частью объекта.

Эти флажки должны позволять пользователю нажимать на них и изменять логические переменные, которые затем сохраняются в основной коллекции объектов.

Мысли?

ответ

0

JTable подходит для такого рода задач. вы можете многое сделать с помощью рендереров и редакторов. Here is a tutorial. Выдержка с моим вниманием гласит:

Чтобы выбрать средство визуализации, которое отображает ячейки в столбце, таблица сначала определяет, был ли указан обработчик для этого конкретного столбца. Если вы этого не сделали, таблица вызывает метод getColumnClass модели таблицы, который получает тип данных ячеек столбца. Затем таблица сравнивает тип данных столбца со списком типов данных, для которых регистрируются ящики. Этот список инициализируется таблицей, но вы можете добавить к ней или изменить ее. В настоящее время, таблица поместить следующие типы данных в списке:

  • Boolean - отображается с флажком.
  • Число - отображается по правому краю.
  • Double, Float - то же, что и Number, но преобразование объекта в текст выполняется экземпляром NumberFormat (с использованием формата по умолчанию для текущего языкового стандарта).
  • Дата - визуализируется с помощью метки, с трансляцией объекта в текст, выполняемой экземпляром DateFormat (с использованием короткого стиля для даты и времени).
  • ImageIcon, Icon - вынесенный по центру с меткой.
  • Объект - отображается меткой, отображающей строковое значение объекта.

Редакторы ячеек выбираются с использованием аналогичного алгоритма.

Смежные вопросы