JTable

8 respostas
I

Como jogar dados de uma jtextfield para uma JTable?

Obrigado.

8 Respostas

Anselmo.axo

Boa Tarde Ivan,

Acho que esse trecho de codigo vai dar uma grande ajuda, mais de uma olhada na documentação .

final DefaultTableModel modelo = new 
       DefaultTableModel();
    
    // constrói a tabela
    JTable tabela = new JTable(modelo);
    
    // Cria a coluna
    modelo.addColumn("Teste");
    JScrollPane scrollPane = new JScrollPane(tabela);

        JButton btn = new JButton("Adicionar");
        btn.addActionListener(
      new ActionListener(){
      	public void actionPerformed(ActionEvent e){
      	  
      	   String teste = seuTextField.getText();
           modelo.addRow(new Object[]{teste});

        }
      }	
    );

Sempre que for utilizar um componente da API, confira a documentação. No caso do JTable, dê uma olhada em [url]http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/JTable.html .[/url]

Abs,
Anselmo

jessetsilva

de uma olhadinha pelo forum que tem varias coisas sobre textfield e sobre table, da pra juntar isso e aprender muita coisa.

use o [color=blue]suatabela.setValueAt(conteudo desejado, linha desejada, coluna desejada)[/color]

para seu textefiled te passar valor vc usa o [color=blue]seutextField.gettext()[/color]

exemplo :

JTable tabela = new JTable();
    JTextField texto = new JTextField();
  tabela.setValueAt(texto.getText(),0,0); // onde a linha=0 e coluna =0

para passar valores como inteiros, Doubles, datas e coisas assim pesquise a documentação para conhecer os parses de cada um, blza?

vlw.

I

A parte dos parses eu ja sei alguma coisa, só uma dúvida, para que eu possa pegar um valor que esta em uma JTextField e jogar esse valor para uma JTable eu devo fazer assim:

[color=blue] JTable.setValueAt(JTextField.gettext(),0,0);[/color]

É mais ou menos isso ou não?

Obrigado pela força.

jessetsilva

isso ai

I

Pessoal,
tenho dois valores dentro da JTable, um na coluna 0 e outro na coluna 1, quero multiplicar estes dois valores e jogar na coluna 2, alguma dica?

Obrigado.

jessetsilva
tabela.setValueAt(tabela.getValueAt(0,0) * tabela.getValueAt(0,1),0,2);
// pegando o valor da linha 0 coluna 0 e linha o coluna 1 e , multiplicando e colocando na linha 0 coluna 2, 
// vc pode tambem usar uma variável, atribuir o valor e depois jogas na coluna desejada
I

Ao tentar multiplicar os dois valores:

[color=blue]JTvenda.setValueAt((JTvenda.getValueAt(0,1)) * (JTvenda.getValueAt(0,2)),0,3);[/color]

da este erro, você sabe dizer o que estou fazendo de errado?
[color=darkblue]operator * cannot be applied to java.lang.Object,java.lang.Object[/color]

Marky.Vasconcelos

table.getValueAt retorna um Object e não um numero

Use o cast

tabela.setValueAt(Double.parseDouble(tabela.getValueAt(0,0)) * Double.parseDouble(tabela.getValueAt(0,1)),0,2);

E mais uma coisa.
Recomendo voce para de usar a DefaultTableModel procure no forum exemplos de como extender AbstractTableModel e criar os seus proprios.

Criado 12 de novembro de 2008
Ultima resposta 13 de nov. de 2008
Respostas 8
Participantes 4