Estou criando uma tabela em java que ao inserir dados é capturado e mostrado na tabela, mas não sei exatamente como faço para declarar minhas variaveis ao chamar na tabela.
cadastro usuarios = new cadastro();
usuarios.setNome(jTextField2.getText().trim());
usuarios.setCpf(jTextField3.getText());
usuarios.setEmail(jTextField4.getText());
usuarios.setTelefone(jTextField5.getText());
usuarios.setDescricao(jTextArea1.getText());
if ((jTextField2.getText().isEmpty())
|| (jTextField3.getText().isEmpty())
|| (jTextField4.getText().isEmpty())
|| (jTextField5.getText().isEmpty())
||(jTextArea1.getText().isEmpty()))
{
JOptionPane.showMessageDialog(null,"por favor preencher todos os campos!");
}
else
{
DefaultTableModel val= (DefaultTableModel) tbusuario.getModel();
//erro com essa linha abaixo:
val.addRow(new usuarios String[](nome,cpf,email,telefone,descricao));
jTextField2.setText("");
jTextField3.setText("");
jTextField4.setText("");
jTextField5.setText("");
jTextArea1.setText("");
jTextField2.requestFocus();
}
Eu evitaria utilizar DefaultTableModel, ele basicamente só é útil para JTable com dados estáticos, já que você precisa adicionar itens nele.
Para JTable com conteúdo dinâmico, implemente o seu próprio TableModel, estendendo AbstractTableModel, assim não há necessidade de ficar escrevendo laços para inserir itens na JTable, basta simplesmente fazer seu TableModel renderizar uma coleção de objetos.
oi, de inicio eu fiz com AbstractTableModel só que executou somente uma vez tudo belezinha e depois ficou dando erro, por isso acabei optanto pelo DefaultTableModel. Mesmo assim, irei seguir o exemplo, e fazer de forma dinâmica. muito obrigada.