Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Swing JTable скрытие столбцов / 10 сообщений из 10, страница 1 из 1
30.06.2015, 13:16
    #38995914
Nixic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Swing JTable скрытие столбцов
Есть задача, дать пользователям скрывать некоторые столбцы. Задача не особо сильно важная, но хотелось бы такое сделать.
Погуглив, я нашел два способа:

1. Делают максимальную и минимальную ширину 0 ну и ширину задают 0
По факту это не скрывает столбце, а делает его узким, примерно 10пкс, ну или около того, не измерял.

2. table.removeColumn(table.getColumnModel().getColumn(index));
но он мне не подходит, так как в процессе отрисовки таблицы или при выделении строки, из определенных по номеру столбцов у меня берутся данные, которые при уменьшении количества столбцов, берут данные из того же по номеру столбца, но данные в нем уже, естественно, другие.

Есть ли способ просто сделать столбец невидимым, при этом не удаляя его из таблицы?
...
Рейтинг: 0 / 0
30.06.2015, 13:18
    #38995918
Nixic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Swing JTable скрытие столбцов
А да, есть еще из набора SwingX компонент JXTable, там есть свойство
setVisible, дак вот он работает по тому же принципу removeColumn из второго варианта.
...
Рейтинг: 0 / 0
30.06.2015, 13:47
    #38995953
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Swing JTable скрытие столбцов
NixicЕсть ли способ просто сделать столбец невидимым, при этом не удаляя его из таблицы?
Нужно на уровне TableModel и TableColumnModel реализовать динамику, чтобы модель сообщала таблице не актуальные данные, а только то что должно быть видно.
...
Рейтинг: 0 / 0
30.06.2015, 15:37
    #38996080
lleming
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Swing JTable скрытие столбцов
BlazkowiczNixicЕсть ли способ просто сделать столбец невидимым, при этом не удаляя его из таблицы?
Нужно на уровне TableModel и TableColumnModel реализовать динамику, чтобы модель сообщала таблице не актуальные данные, а только то что должно быть видно.

+5
Можно по сути сделать динамическую таблицу, извлекать столбцы, добавлять столбцы по необходимости, строки.
можно внизу добавить экстра строку где обычно ставят редактируемую строку для добавления новой записи в БД.
...
Рейтинг: 0 / 0
01.07.2015, 10:08
    #38996550
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Swing JTable скрытие столбцов
lleming+5
Можно по сути сделать динамическую таблицу, извлекать столбцы, добавлять столбцы по необходимости, строки.
можно внизу добавить экстра строку где обычно ставят редактируемую строку для добавления новой записи в БД.
В Swing просто нет полноценных TableModel. DefaultTableModel это тупая обертка над коллекцией. Поэтому в мало-мальски сложных приложениях, нужно наследоваться от AbstractTableModel и реализовывать в таком классе всё желаемое поведение таблицы.
...
Рейтинг: 0 / 0
01.07.2015, 10:50
    #38996603
irbis_al
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Swing JTable скрытие столбцов
А я просто делаю столбец с 0 нулевым размером.
...
Рейтинг: 0 / 0
01.07.2015, 12:04
    #38996705
Nixic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Swing JTable скрытие столбцов
irbis_al,

но он ведь по факту не становился невидимым при нулевом размере?
У меня он сужается и остается в таблице, или я что-то не так делаю?
...
Рейтинг: 0 / 0
01.07.2015, 15:01
    #38996952
irbis_al
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Swing JTable скрытие столбцов
Nixicirbis_al,

но он ведь по факту не становился невидимым при нулевом размере?
У меня он сужается и остается в таблице, или я что-то не так делаю?

Я не говорил,что он станет невидимым....
Он сужается ...пользователю особо не мешает.
Если таких столбцов много...есть смысл другую таблицу создать и по CardLayout её показывать.
...
Рейтинг: 0 / 0
01.07.2015, 15:06
    #38996961
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Swing JTable скрытие столбцов
Nixicirbis_al,

но он ведь по факту не становился невидимым при нулевом размере?
У меня он сужается и остается в таблице, или я что-то не так делаю?
Ну, там можно через задний проход и к нулю свести. Я такое видел. Но смысл? Через кастомизацию модели по-моему проще.
...
Рейтинг: 0 / 0
06.07.2015, 16:03
    #39000690
Nixic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Swing JTable скрытие столбцов
Сделал через модель и дальнейшую сериализацию листа с названиями колонок в файл в домашней папке пользователя.
Удаляем столбцы через правую кнопку мыши и всплывающее меню.
Плюсом ширина колонок тоже сохраняется в файле.
Красиво получилось :)
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Swing JTable скрытие столбцов / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]