Criei um internal frame …para que ele receba os valores que seram inserido na jtable.
ele calcula valores default caso nenhum valor seja inserido e tudo…,
soh que na hora de criar o insertRow() nao sei como relaciona-lo a jtable que se encontra em outra classe ,a qual chama esse internal atraves de uma actionlistener.
try{
insertdados dados = new insertdados();
dados.setVisible(true);
}catch(Exception e ){
System.out.println(e);
}
Como faço para que inserir os dados no frame da table e essa eh a forma correta de invocar um internalframe??
Neste pedaço de codigo, eu faço a conexao no banco de dados, e insiro os dados na tabela.
Espero que ajude...
falow
publicstaticbooleanmontaTabela(Stringsql){ResultSetrs=ConexaoBD.Conexao.Consulta(sql);DefaultTableModelaModel=(DefaultTableModel)Interface.Frame_principal.jTBL_tabela.getModel();aModel.setNumRows(0);Interface.Frame_principal.jTBL_tabela.setModel(aModel);try{rsmd=rs.getMetaData();intqtdcolunas=rsmd.getColumnCount();System.out.println("Quantidades Colunas: "+qtdcolunas);String[]tablecoluns=newString[qtdcolunas];while(rs.next()){Object[]obj=newObject[qtdcolunas];for(inti=0;i<qtdcolunas;i++){obj[i]=rs.getObject(i+1);tablecoluns[i]=rsmd.getColumnName(i+1);//System.out.println("Nome da Coluna: "+rsmd.getColumnName(i+1));//System.out.println("Nome da Coluna Obj: "+obj[i]);}aModel.setColumnIdentifiers(tablecoluns);aModel.addRow(obj);}}catch(SQLExceptionex){System.err.println("SQLException MontaTabela: "+ex.getMessage());returnfalse;}catch(Exceptionex){System.err.println("Exception MontaTabela: "+ex.getMessage());returnfalse;}// Metodo que define o tamanho das colunastamanhoColuna();Interface.Frame_principal.jTBL_tabela.setModel(aModel);returntrue;}publicstaticbooleantamanhoColuna(){intvcolindex=0;intwidth=70;Interface.Frame_principal.jTBL_tabela.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);Interface.Frame_principal.jTBL_tabela.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);TableColumncol=Interface.Frame_principal.jTBL_tabela.getColumnModel().getColumn(vcolindex);col.setPreferredWidth(width);vcolindex=1;width=450;col=Interface.Frame_principal.jTBL_tabela.getColumnModel().getColumn(vcolindex);col.setPreferredWidth(width);vcolindex=2;width=220;col=Interface.Frame_principal.jTBL_tabela.getColumnModel().getColumn(vcolindex);col.setPreferredWidth(width);vcolindex=3;width=50;col=Interface.Frame_principal.jTBL_tabela.getColumnModel().getColumn(vcolindex);col.setPreferredWidth(width);vcolindex=4;width=60;col=Interface.Frame_principal.jTBL_tabela.getColumnModel().getColumn(vcolindex);col.setPreferredWidth(width);vcolindex=5;width=60;col=Interface.Frame_principal.jTBL_tabela.getColumnModel().getColumn(vcolindex);col.setPreferredWidth(width);vcolindex=6;width=60;col=Interface.Frame_principal.jTBL_tabela.getColumnModel().getColumn(vcolindex);col.setPreferredWidth(width);vcolindex=7;width=170;col=Interface.Frame_principal.jTBL_tabela.getColumnModel().getColumn(vcolindex);col.setPreferredWidth(width);returntrue;}
maicon.santiago
Soh que nao estou usando um banco de dados para conseguir os dados e sim de um frame no qual insiro os dados…e dpois crio o object[dados] soh que nao estou conseguindo enviar esses valores a um outro frame no qual esta a tabela,que atraves de um evento chama o primeiro frame…como se fosse um jDiallog
entendeu??
Ratao
Crie um constructor na classe que vc chama a qual receba como parâmetro os dados que vc está enviando da 1ª janela. Assim quando instanciada a partir desde constructor a nova classe já terá os valores passados como parâmetro.
maicon.santiago
Vou tentar aqui…qualquer coisa posto aqui…por enquanto obrigado!!
M
mr.maieski
Ae colega
Segue um exemplo do seu problema, espero que ajude.
Tem usando um objeto e outro passando uma arraylist.
Se tiver duvida estou a disposição para esclarecimento.