Você está aqui: Java ::: Classes e Componentes ::: JTable |
Inserir uma coluna em uma determinada posição da JTableQuantidade de visualizações: 9187 vezes |
import javax.swing.*; import java.awt.*; import java.awt.event.*; import javax.swing.table.*; public class Estudos extends JFrame{ public Estudos(){ super("Exemplo de uma tabela simples"); final DefaultTableModel modelo = new DefaultTableModel(); // constrói a tabela final JTable tabela = new JTable(modelo); tabela.setAutoCreateColumnsFromModel(false); // Cria duas colunas modelo.addColumn("Nome"); modelo.addColumn("Idade"); JButton btn = new JButton("Inserir Colunas"); btn.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent e){ String titulo = JOptionPane.showInputDialog(null, "Informe o título para a nova coluna:"); int pos = Integer.parseInt(JOptionPane.showInputDialog(null, "Informe a posição da nova coluna:")); // testa se a posição é válida if(pos > (modelo.getColumnCount() - 1)) pos = 0; // Insere uma coluna na posição especificada insertColumn(tabela, titulo, null, pos); } } ); tabela.setPreferredScrollableViewportSize(new Dimension(350, 50)); Container c = getContentPane(); c.setLayout(new FlowLayout()); JScrollPane scrollPane = new JScrollPane(tabela); c.add(scrollPane); c.add(btn); setSize(400, 300); setVisible(true); } public void betterAddColumn(JTable table, Object headerLabel, Object[] values) { DefaultTableModel model = (DefaultTableModel)table.getModel(); TableColumn col = new TableColumn(model.getColumnCount()); if(table.getAutoCreateColumnsFromModel()) { throw new IllegalStateException(); } col.setHeaderValue(headerLabel); table.addColumn(col); model.addColumn(headerLabel.toString(), values); } public void insertColumn(JTable table, Object headerLabel, Object[] values, int vColIndex){ betterAddColumn(table, headerLabel, values); table.moveColumn(table.getColumnCount()-1, vColIndex); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
AutoCAD Civil 3D .NET C# - Como pedir para o usuário selecionar um alinhamento no Civil 3D usando a função GetEntity() do AutoCAD Civil 3D .NET C# API |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |