ViniGodoy 5 de nov. de 2009
Sobrescreva o método getColumnName, no seu TableModel.
Pode postar o código do seu TableModel aqui?
A tabela também fornece os método getSelectedRow() e getSelectedRows(). Aí é só perguntar para o seu model que objeto está naquela linha.
renato_ramos 5 de nov. de 2009
valeu pela atencao vini
aqui esta o tablemodel
public class ModeloTabelaQuestao extends AbstractTableModel
{
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext ( "applicationContext.xml" );
private QuestaoFacade questaoFacade = ( QuestaoFacade ) context . getBean ( "questaoFacade" );
private ArrayList questaoLista = new ArrayList ();
private String [] colunas = { "Questao" };
public ModeloTabelaQuestao ()
{
questaoLista . addAll ( questaoFacade . obterTodos ());
fireTableDataChanged ();
}
public void addQuestao ( Questao questao )
{
questaoLista . add ( questao );
fireTableDataChanged ();
}
public void addListaQuestao ( List list )
{
questaoLista . addAll ( list );
fireTableDataChanged ();
}
public void LimparDados ()
{
questaoLista = new ArrayList ();
fireTableDataChanged ();
}
public int getRowCount () {
return questaoLista . size ();
}
public int getColumnCount () {
return colunas . length ;
}
public Object getValueAt ( int rowIndex , int columnIndex ) {
Questao q = ( Questao ) questaoLista . get ( rowIndex );
switch ( columnIndex )
{
case 0 :
return q . getDescQuestao ();
default :
return null ;
}
}
}
eu peguei de um exemplo no forum… mas eu qru so uma coluna… agora escrevendo esse post… estava pensado pq eu não estou usando lista 'oO…
pq eu quero um daqueles negocios de adicionar, remover de uma lista para outra…
valeu!
ViniGodoy 5 de nov. de 2009
Você pode criar métodos práticos como:
public Questao getQuestao(int linha) {
return questaoLista.get(linha);
}
Outra coisa, ao invés de sempre usar o fireTableDataChanged, use também o fireTableRowAdded, removed, etc.
renato_ramos 5 de nov. de 2009
tentei isso
mas eu tive que fazer cast para questao
public Questao getQuestao ( int linha )
{
return ( Questao ) questaoLista .get ( linha ) ;
}
iah dah exeception de Array outofbound.
eu tenho que pegar por esse tipo para que eu possa settar ele em outro objeto mais tarde… mas está complicado =/
tentei com a lista… e tambem não consegui fazer cast
valeu!
renato_ramos 5 de nov. de 2009
kkkk
um dia eu ainda me mato… tava fazendo o teste errado xD
aqui o codigo
//metodo para inserir
public void InserirQuestao ()
{
Questao questao = ( Questao ) context . getBean ( "questao" );
questao = modeloTabelaQuestao . getQuestao ( jTableQuestao . getSelectedRow ());
listModelQuestaoSelecionada . addElement ( questao );
}
e o metodo do modelo ^^’
public Questao getQuestao ( int linha )
{
return ( Questao ) questaoLista .get ( linha ) ;
}
muito obrigado Vini pela atencao… desculpa a enxecao de saco ^^’