Bom dia a todos alguem poderia me ajudar
to tentando colorir a minha jtable ms nao to conseguindo
pegui uns exemplos aqui mesmo do forum
ms nao aconteceu o q eu esperava
e o seguinte depois de dez minutos a linha tem q ficar vermelha ms isso nao ta acontecendo.
[code]
public void montarJTable() throws ClassNotFoundException, SQLException, Exception {
// TODO add your handling code here:
final String[] colunas = {“USUÁRIO”, “ANDAR”, “GUICHÊ”, “ATENDIDA”, “ATENDENDO”, “CANCELADA”, “SENHA”, “TIPO”};
int i = 0;
listSupervisor = supervisor.monitoraAtendimento(dt);
conteudo = new String[listSupervisor.size()][8];
Iterator it = listSupervisor.iterator();
verificaOcupado(i);
while (it.hasNext()) {
i++;
verificaOcupado(i);
supervisor = (Supervisor) it.next();
conteudo[this.listSupervisor.indexOf(supervisor)][0] = supervisor.getNomeUsuario().toUpperCase().trim();
conteudo[this.listSupervisor.indexOf(supervisor)][1] = supervisor.getLocalizacao().trim();
conteudo[this.listSupervisor.indexOf(supervisor)][2] = supervisor.getNomeGuiche().trim();
conteudo[this.listSupervisor.indexOf(supervisor)][3] = String.valueOf(supervisor.getQntAtendidas()).trim();
conteudo[this.listSupervisor.indexOf(supervisor)][4] = retornarHorasDeDiferenca(supervisor.getHrInicAtendimento()).trim(); // verifico os minutos
conteudo[this.listSupervisor.indexOf(supervisor)][5] = String.valueOf(supervisor.getQntCanceladas()).trim();
conteudo[this.listSupervisor.indexOf(supervisor)][6] = String.valueOf(supervisor.getUltSenha()).trim();
if (supervisor.getTipoSenha().equals(“N”)) {
conteudo[this.listSupervisor.indexOf(supervisor)][7] = “Normal”;
} else {
conteudo[this.listSupervisor.indexOf(supervisor)][7] = “Preferencial”;
}
}
//constrói o dataModel
dataModel = new AbstractTableModel() {
public int getColumnCount() {
return colunas.length;
}
public int getRowCount() {
return conteudo.length;
}
public Object getValueAt(int row, int col) {
return conteudo[row][col];
}
@Override
public String getColumnName(int column) {
return colunas[column];
}
@Override
public Class getColumnClass(int col) {
return getValueAt(0, col).getClass();
}
// @Override
public void setValueAt(String aValue, int row, int column) {
conteudo[row][column] = aValue;
}
};
// Aqui eu tento colorir a tabela mas nao acontece nada
TableCellRenderer tcr = (TableCellRenderer) new Colorir().getTableCellRendererComponent(jTable1, retornarHorasDeDiferenca(supervisor.getHrInicAtendimento()).trim(), rootPaneCheckingEnabled, rootPaneCheckingEnabled, i, i);
TableColumn column = this.jTable1.getColumnModel().getColumn(i);
column.setCellRenderer(tcr);
this.jTable1.setModel(dataModel);
ListSelectionModel listMod = this.jTable1.getSelectionModel();
listMod.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
this.jTable1.getColumnModel().getColumn(0).setPreferredWidth(80);
this.jTable1.getColumnModel().getColumn(1).setPreferredWidth(20);
this.jTable1.getColumnModel().getColumn(2).setPreferredWidth(10);
this.jTable1.getColumnModel().getColumn(3).setPreferredWidth(10);
this.jTable1.getColumnModel().getColumn(4).setPreferredWidth(30);
this.jTable1.getColumnModel().getColumn(5).setPreferredWidth(7);
this.jTable1.getColumnModel().getColumn(6).setPreferredWidth(7);
this.jTable1.getColumnModel().getColumn(6).setPreferredWidth(17);
}[/code]
Classe getTableCellRendererComponent
class Colorir extends DefaultTableCellRenderer {
public Component getTableCellRendererComponent(JTable table, String tempo, boolean isSelected,
boolean hasFocus, int row, int column) {
Component cell = super.getTableCellRendererComponent(table, tempo, isSelected, hasFocus, row, column);
int hr = Integer.valueOf(tempo.substring(0, 1));
if (hr > 0) {
cell.setBackground(Color.RED);
}
int minuto = Integer.valueOf(tempo.substring(2, 4));
if (minuto >= 10) {
cell.setBackground(Color.RED);
}
return cell;
}
}
alguem sabe m dizer pq??