Dúvida com JTable

4 respostas
G

O que está errado com meu código? (não aparece os dados...)

package teste;

import javax.swing.JFrame;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;



public class Main extends JFrame{






    public static void main(String[] args) {

   JFrame tela = new JFrame(); 
   JTable tabela = new JTable(); 
   
    
   String[][] valores = new String[][]{

           {"Guilherme", "22 anos"},
           {"Priscila", "23 anos"}

       } ;
     
    String[] colunas = new String []{"Nome","Idade"};
 
 
    DefaultTableModel dtm = new DefaultTableModel (valores, colunas);
    tabela.setModel(dtm);
    tela.getContentPane().add(tabela);
    tela.setVisible(true);
    tela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    


    }

}

4 Respostas

Hebertbc

Bom eu acho que o certo seria algo parecido com isso

DefaultTableModel dtm = (DefaultTableModel) tabela.getModel();
dtm.setDataVector(valores, colunas);

Mais o correto é vc da uma olhada nisso aqui que copiei da assinatura de alguem… :stuck_out_tongue:

Ei… você está usando DefaultTableModel no seu projeto?? Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295

G

Na realidade não é nem um projeto, é um teste mesmo, sou um completo iniciantes… rsrs

Inseri o código que você me passou, mas mesmo assim não aparece a tabela, apenas uma tela…

Hebertbc
import javax.swing.JFrame;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;

public class Main extends JFrame {

    public static void main(String[] args) {

        JFrame tela = new JFrame();
        JTable tabela = new JTable();


        String[][] valores = new String[][]{
            {"Guilherme", "22 anos"},
            {"Priscila", "23 anos"}
        };

        String[] colunas = new String[]{"Nome", "Idade"};


        DefaultTableModel dtm = (DefaultTableModel) tabela.getModel();
        dtm.setDataVector(valores, colunas);
        
        tela.setBounds(100,100,400,300); //Faltou o tamanho e posição do jframe X, Y, LARGURA. ALTURA
        tela.getContentPane().add(tabela);
        tela.setVisible(true);
        tela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

O que estava acontecendo era que tava sem o tamanho da janela ai so aparecia os botoes isso?
E outra seu metodo está certo eu que num prestei atenção mesmo

G

Muito obrigado!!!

Estava só aparecendo a janela, mas sem os dados mesmo.

Valeu!

Criado 13 de abril de 2010
Ultima resposta 13 de abr. de 2010
Respostas 4
Participantes 2