Как задать тип данных столбца при создании столбца в JTable?

150
12 октября 2019, 22:10

Хочу при создании столбца по нажатии кнопки из ComboBox выбирать тип данных в столбце, но не могу найти ни свойство, ни метод. Подскажите, как менять тип.

Answer 1

Можно так

        TableModel model = new DefaultTableModel(){
            Class[] types = {String.class,Boolean.class,Integer.class,Double.class};
            @Override
            public Class getColumnClass(int columnIndex) {
                return types [columnIndex];
            }
        };

Метод *.class устанавливает тип данных в столбце таблицы. Например String.class - это означает что в столбце находятся строки. Соответственно таблица по умолчанию подставит TableCellRenderer и TableCellEditor для строки, так же столбец будет выполнять сортировку как со строками. Если тип Integer.class, то это значит что в столбце целые числа и сортироваться они будут как числа и при отображении по умолчанию они будут выравниваться по правому краю. Для отображения объектов типа Boolean.class используется CheckBox и т.д. Более подробно можно посмотреть здесь How to Use Tables

READ ALSO
В чем разница между методами map и flatMap в Java 8?

В чем разница между методами map и flatMap в Java 8?

Чем отличаются методы Streammap и Stream

120
Помогите пожалуйста

Помогите пожалуйста

Всем доброго времени сутокЯвляясь полнейшим профаном в программировании в целом я наткнулся на сайт http://strolen

131
Работа с двумя коллекциями MongoDB

Работа с двумя коллекциями MongoDB

Есть база данныхВ ней создаю 2 коллекции для работы с ними

113
Polynom( ) in Polynom cannot be applied to (float[], double)

Polynom( ) in Polynom cannot be applied to (float[], double)

Только начала изучать Java, возникает ошибка "Polynom( )  in Polynom cannot be applied to (float[], double)" во втором кодеМожете объснить, что она значит и как её исправить?...

130