Problema com Scrool de Colunas em Jtable

Tenho um Jtable com mais de 20 campos, e mais de 500 linhas, quanto a parte das linhas ela cria a ScroolBar para rolagem, mas nas colunas elas ficam todas apertadas dentro do tamanho da jtable nao cria a barra de Scroll.
Segue Abaixo codigo de Criação da Tabela.

ObjectTableModel<Clientes> tableModel = new ObjectTableModel<Clientes>(
                resolver, "clieCodigo,clieNome,clieRazaosocial,clieTipo,clieCnpjcpf,clieRgie,clieEndereco,clieEndcompl," +
                "clieBairro,clieCidade,clieUf,clieCep,clieFone,clieEmail,clieClasse,clieSituacao,clieMotivo,clieDtcad," +
                "clieVendCodigo,clieRotaCodigo,clieSeqentrega,clieCaractrib,clieFormaspgto,clieStatus,clieComportamento," +
                "clieRamoatividade,clieLimite,clieSaldo,clieDescgeral,clieDescprod,clieControle");

        List<Clientes> lst = getLista();
        tableModel.setData(lst);
        tableModel.setEditableDefault(false);
        TbClientes.setAutoResizeMode(TbClientes.AUTO_RESIZE_ALL_COLUMNS);
        TbClientes.setAutoscrolls(true);
        TbClientes.setModel(tableModel);
        TbClientes.setAutoscrolls(true);
        TbClientes.setCellSelectionEnabled(false);

Isso é por causa do JScrollPane. Não lembro qual parametro muda pra ter essa barra de scroll também.

Vou procurar e te falo.

PS: Meu table model :slight_smile:

Ahh… o JScrollPane já tem ambas scrollbars… mas pelo o que vi voce nao esta usando ele está?

e com

TbClientes.setAutoResizeMode(TbClientes.AUTO_RESIZE_ALL_COLUMNS);

Ele redimensiona todas as colunas para caberem no getPreferredSize de onde a tabela está.

Ola sim mark seu table model, inclusive muito bom, resolveu meu problema de preencher a tabela com o List.
Estou usando sim um JScrollPane, ainda seto para ter as barras de Rolagem, tanto horizontal como vertical.

        jScrollPane1 = new javax.swing.JScrollPane();
        TbClientes = new javax.swing.JTable();
         jScrollPane1.setHorizontalScrollBarPolicy(javax.swing.ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);
        jScrollPane1.setVerticalScrollBarPolicy(javax.swing.ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
        jScrollPane1.setViewportBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
        jScrollPane1.setViewportView(TbClientes);

Mas com o TbClientes.AUTO_RESIZE_ALL_COLUMNS as colunas são redimensionadas para caber no PreferredSize que no caso da JTable vai retornar o tamanho do JViewport do JScrollPane.

Ola funcionou,
coloquei como off
TbClientes.AUTO_RESIZE_OFF.
Me diz uma coisa como vc seta os tamanhos das colunas, vc seta elas manual pq digamos tenho o campo nome, e tenho posso ter até 40 caracteres nele, queria setar o tamanho da coluna baseado em anotations, como o nome.

Eu tenho um método que calcula o tamanho das colunas sózinho de acordo com a maior célula preenchida de cada coluna.

Vou terminar isso e depois vou fazer o upload pro Mark Utils

Legal, enquanto isso vou tentar criar algo por aki depois da tabela ja criada, tbm baseado no maior campo que esta na coluna.