JTable: как выбрать столбцы во время выполнения - PullRequest
2 голосов
/ 05 июля 2010

У меня слишком много столбцов в таблице, чтобы отображать их все одновременно, и я хотел бы позволить пользователю изменять, какие столбцы видимы Как я могу это сделать?

примечание: Приложение может легко выбирать столбцы во время выполнения. Я спрашиваю, какие элементы пользовательского интерфейса нужно добавить, чтобы пользователь мог скрывать / показывать столбцы во время выполнения.

Ответы [ 5 ]

1 голос
/ 05 июля 2010

Диспетчер столбцов таблицы позволяет пользователю щелкнуть правой кнопкой мыши заголовок таблицы, чтобы указать, какие столбцы отображаются.

1 голос
/ 05 июля 2010

Если вы можете импортировать некоторые внешние библиотеки, вы можете взглянуть на http://swinglabs.org/docs/components/JXTable/tutorial.jsp, который поддерживает такие модификации времени выполнения.

0 голосов
/ 06 июля 2010

Либо отображать всплывающее меню с возможными столбцами, когда пользователь щелкает правой кнопкой мыши заголовок, либо реализовывать небольшое (и светлое) всплывающее диалоговое окно со списком флажков для выбора видимых столбцов.Диалог можно открыть, щелкнув правой кнопкой мыши, нажав кнопку на панели инструментов или в меню панели инструментов.

0 голосов
/ 06 июля 2010

Используйте методы TableModel.addColumn (TableColumn) и TableModel.removeColumn (TableColumn) для отображения / скрытия столбцов на лету.

Вы можете присоединить эти вызовы к любым другим компонентам графического интерфейса (например, сделатьJPanel или JTable с несколькими флажками).

0 голосов
/ 05 июля 2010

Стандартного способа не существует, однако вы можете сделать что-то вроде этого:

  1. Использовать пользовательский компонент рендеринга заголовка таблицы для установки дополнительных действий / интерфейса пользователя в заголовках столбцов (например, черезконтекстное меню флажков)
  2. Добавить пользовательскую модель, которую вы можете переконфигурировать для отображения различных элементов в зависимости от того, что выбрал пользователь с помощью дополнительных действий над заголовками столбцов
  3. Выполнить подключение /сантехника.

В качестве альтернативы: найдите пользовательский компонент, который делает это.Возможно, что-то уже есть: такие проекты, как библиотека компонентов из JIDE, были бы хорошим местом для поиска.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...