Gente é possivel fazer com que as linhas de uma tabela se comportem como uma ComboBox?
Se sim agora vem a pior parte … Como? :?
Vlw a todos que puderem deixar dicas, links e exemplos

Gente é possivel fazer com que as linhas de uma tabela se comportem como uma ComboBox?
Se sim agora vem a pior parte … Como? :?
Vlw a todos que puderem deixar dicas, links e exemplos

Mais alguma dica, eh q meu ingles não é dos melhores!
Galera fiz assim oh, mas não esta funcionando, acho que o problema eh na hora de setar o JComboBox no TableColumn:
Classe pai que deve fazer o modelo do ComboBox
package Classes.Modelos;
import Classes.DAO.BancoDAO;
import Classes.DAO.DAOPai;
import javax.swing.JComboBox;
public class ColunaComboBox extends JComboBox{
private DAOPai connBD = new BancoDAO();
public ColunaComboBox(){}
public DAOPai getConnBD() {
return connBD;
}
public void listar(){
for(int i = 0; i < this.getItemCount(); i++){
System.out.println(this.getItemAt(i).toString());
}
}
}
classe que extende a classe acima
package Classes.Modelos;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
public class ColCombBoxTabCentroCustGrupos extends ColunaComboBox {
public ColCombBoxTabCentroCustGrupos(){
super();
initComboBox();
}
public void initComboBox(){
ResultSet rs = super.getConnBD().getRs();
Statement stm = (Statement) super.getConnBD().getStm();
try {
stm = (Statement) super.getConnBD().getGcbd().getBanco().getConexao().createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
rs = stm.executeQuery("SELECT descricao FROM fn_ccusto");
if(rs.first()){
do{
super.addItem(rs.getObject(1));
}
while(rs.next());
}
}
catch (SQLException ex) {
Logger.getLogger(ColCombBoxTabCentroCustGrupos.class.getName()).log(Level.SEVERE, null, ex);
}
}
@Override
public void listar(){
super.listar();
}
}
Até aqui tudo certo, mas na hora de aparecer na tela não funciona, se puderem me ajudar agradeço!
Eu terei q criar o Combo box na frame que tem a JTable?
Gente pq o codigo a baixo não funciona, ele roda legal, mas na hora de aparecer os comboBox nas colunas não rola!
codigo
package Interface.Financeiro.Tabelas;
import BancoDeDados.GerenciaConexaoBancoComDados;
import Classes.Modelos.ColCombBoxTabCentroCustGrupos;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.CellEditor;
import javax.swing.DefaultCellEditor;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumn;
public class TabCentroCustGrupos extends javax.swing.JFrame {
private DefaultTableModel modelo = null;
private ResultSet rs = null;
private Statement stm = null;
private GerenciaConexaoBancoComDados gcbd = new GerenciaConexaoBancoComDados();
private TableColumn comboBoxTab = new TableColumn(1);
private ColCombBoxTabCentroCustGrupos colunaComb = new ColCombBoxTabCentroCustGrupos();
public TabCentroCustGrupos() {
initComponents();
initTabela();
}
//****************************
//codigo gerado automaticamente
//****************************
private void btnRetornaActionPerformed(java.awt.event.ActionEvent evt) {
this.dispose();
}
public void initTabela(){ // Ter um iniTab() para cada jRadioButton
try {
stm = (Statement) gcbd.getBanco().getConexao().createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
rs = stm.executeQuery("SELECT fg.grupo, fg.percentual, fn.descricao FROM fn_grupo_ccusto AS fg INNER JOIN fn_ccusto AS fn ON TRUE");
modelo = (DefaultTableModel) tabCentroCustGrupos.getModel();
if(rs.first()){
do{
modelo.addRow(new Object[]{rs.getObject(1)});
modelo.setValueAt(rs.getObject(2), rs.getRow()-1, 2);
colunaComb.addItem(rs.getObject(3));
}
while(rs.next());
}
// else
// System.out.println("Não a linhas na tabela");
rs.first();
tabCentroCustGrupos.setModel(modelo);
}
catch (SQLException ex){
ex.printStackTrace();
}
comboBoxTab.setCellEditor(new DefaultCellEditor(colunaComb));
modelo.addRow(new Object[]{});
tabCentroCustGrupos.setModel(modelo);
}
public JTable getTabela(){
return tabCentroCustGrupos;
}
// Variables declaration - do not modify
private javax.swing.JTextArea areaCriterio;
private javax.swing.JButton btnRetorna;
private javax.swing.JLabel lblClassificacao;
private javax.swing.JLabel lblClassificacao1;
private javax.swing.JLabel lblContas;
private javax.swing.JLabel lblCriterio;
private javax.swing.JLabel lblDescricao;
private javax.swing.JLabel lblDistribCentrosCustos;
private javax.swing.JLabel lblFundo;
private javax.swing.JLabel lblGrupo;
private javax.swing.JLabel lblPessoa;
private javax.swing.JLayeredPane painel;
private javax.swing.JScrollPane painelTab;
private javax.swing.JScrollPane painelTxtArea;
private javax.swing.JTable tabCentroCustGrupos;
private javax.swing.JTextField txtClassificacao;
private javax.swing.JTextField txtDescricao;
private javax.swing.JTextField txtGrupo;
// End of variables declaration
}