FESTIVAL:Recuperando um valor de célula quando a célula está em um JTable com CellRenderPane
-
12-12-2019 - |
Pergunta
Eu tenho um código assim:
//(...)
JTableFixture myTreeTable = frame.table(matcher);
Se eu tentar obter JCellFixtures ou valores ou conteúdos, tudo será nulo.Estou obtendo apenas o número de linhas ou colunas.JTable usa internamente um CellRendererPanel que acho que preciso buscar.Mas como?JTable não tem ContainerFixture para fazer .panel()
.Existe alguma maneira de obter os valores das células nessas circunstâncias?Como isso geralmente é feito quando existe um painel de renderização de células?
Esta é a hierarquia do depurador FEST:
gui.treetable.myTreeTable[name=null, rowCount=33, columnCount=2, enabled=true, visible=true, showing=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
Solução
Se sua tabela tiver um renderizador de células personalizado, você poderá fornecer seu próprio leitor de células.Confira Renderizadores de células personalizados artigo.Ele demonstra como estender BasicJTableCellReader
e como usar o leitor em JTableFixture
.