Ширина столбцов JTable

103
03 апреля 2022, 03:00

Имеется код

JFrame jFrame=new JFrame();
    jFrame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    jFrame.setExtendedState(MAXIMIZED_BOTH);
    jFrame.setLocationRelativeTo(null);
    DefaultTableModel dtm=new DefaultTableModel(5,4);
    JTable jTable=new JTable(dtm);
    jFrame.add(jTable);
    jFrame.setVisible(true);

Подскажите каким образом можно установить ширину столбцов например так 1-ый 10%, 2-ой 50%, 3-ий и 4-ый по 20%

Answer 1

Можно так

 jTable.getColumnModel().getColumn( 0 ).setWidth( 20 );

Только размеры ставятся в абсолютных размерах.

Для задания размеров в диапазоне используйте минимальное и максимальное значение например:

 TableColumn col = jTable.getColumnModel().getColumn( 0 );
 col.setMinWidth(20);
 col.setMaxWidth(50);

для пересчета размеров при изменении размера таблицы, повесьте слушатель на таблицу, например так

 jTable.addPropertyChangeListener( new PropertyChangeListener(){
        @Override
        public void propertyChange( PropertyChangeEvent evt ){
            if( evt.getPropertyName().equals( "size" ) ){
                jTable.getColumnModel().getColumn( 0 ).setWidth( (int)(jTable.getWidth() * 0.1) );
                ...
            }
        }
 } );
READ ALSO
ListView может в 2 колонки выводиться?

ListView может в 2 колонки выводиться?

Нужно вывести ListView в две колонки те

130
Отключить проверки на ошибки при компиляции классов

Отключить проверки на ошибки при компиляции классов

Как можно отключить проверки на ошибки когда IDEA компилирует проект, по картинке ниже видно что выводятся Warnings, мне бы не то что не хотелось...

75
Error: Invalid or corrupt jarfile

Error: Invalid or corrupt jarfile

Есть проект gradleЯ его собрал в артефакт, в свойствах указал, что это запускаемый файл, но при попытке запустить в терминале пишется следующее:...

109