powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / JTable замена колонок местами
4 сообщений из 4, страница 1 из 1
JTable замена колонок местами
    #39389297
Mari.P
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дано таблица в Swing, компонент JTable
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
TablePanel= new JPanel();
    TablePanel.setLayout(new GridLayout(1,1,3,5));	
    add(TablePanel, BorderLayout.NORTH);
     Vector<String> headerVect = new Vector<String>();
     headerVect.add("    Дата/время          "); 
       for(j=0;j<NumberOfTable;j++)
       	  if(InDraw[j]==true)headerVect.add(SelDrawArrAdrNaim[j]+" - "+SelDrawArrArjNaim[j]);
     DefaultTableModel mod = new DefaultTableModel(headerVect, 0);
     table_a = new JTable();
     table_a.setModel(mod);
     table_a.getTableHeader().setFont(new Font("Courier New", Font.BOLD, 14));
     table_a.setFont(new Font("Courier New", Font.PLAIN, 16));
     table_a.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);

     // цикл по заполнению колонок
            
     /// конец цикла

     scrollPane=new JScrollPane(table_a);
     TablePanel.add(scrollPane);
     validate(); 
     pack();



После вывода таблицы на экран можно подвести курсор к оглавлению любой колонки и с нажатой левой кнопкой мыши менять колонки местами. Но смена видна только на экране, при обращении к элементу скажем
Код: java
1.
table.getModel().getValueAt(i, j)


компоновка вернется старая. Скажите, как можно зафиксировать это перемещение, очень удобно перед построением отчета,
чтобы пользователь разместил колонки в том порядке, в каком ему удобно.
...
Рейтинг: 0 / 0
JTable замена колонок местами
    #39389319
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mari.P,

Никак нельзя "зафиксировать" существующими средствами. Можно использовать методы JTable.convertColumnIndexTo(View|Model).
Можно, конечно, написать такую модель, которая будет самообновляться из порядка колонок. Но это как-то чревато, если использовать типизированнные данные.
...
Рейтинг: 0 / 0
JTable замена колонок местами
    #39392196
Mari.P
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,
Спасибо большое,
Нашла выход:

в функции, которая формирует отчет надо говорить не
Код: java
1.
table.getModel().getValueAt(i, j)



а
Код: java
1.
table.getValueAt(row, 0);



страшного при этом ничего нет, тк осуществляется просто
запись информации в ячейку Excel.
...
Рейтинг: 0 / 0
JTable замена колонок местами
    #39392200
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mari.P,

М-да. Не подумал. Логично же.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / JTable замена колонок местами
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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