Cambiar color fila o celda al cargar jtable
Publicado por Fabian (2 intervenciones) el 09/06/2021 01:12:12
Buen día a todos
Tuve que recurrir nuevamente a la comunidad para poder orientarme en el siguiente inconveniente. Apenas estoy empezando en java, la cuestion es que estoy cargando un jtable y todo va bien, pero requiero que dependiendo del valor de la celda 5 de cada fila que se cargue, dicha fila cambie de color a azul, rojo o verde dependiendo de ese valor.
Tengo mi código que carga mi tabla así:
He buscado por varios foros el getTableCellRenderer pero no se como implementarlo, puede alguien orientarme en como puedo hacerlo, desde ya muchas gracias
Tuve que recurrir nuevamente a la comunidad para poder orientarme en el siguiente inconveniente. Apenas estoy empezando en java, la cuestion es que estoy cargando un jtable y todo va bien, pero requiero que dependiendo del valor de la celda 5 de cada fila que se cargue, dicha fila cambie de color a azul, rojo o verde dependiendo de ese valor.
Tengo mi código que carga mi tabla así:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
DefaultTableModel modelo = new DefaultTableModel();
Agendas.jTable1.setModel(modelo);
Agendas.jTable1.setDefaultEditor(Object.class, null);
modelo.setColumnIdentifiers(new Object[]{"Ide","Habilita","Hora","Admision","Paciente","Paciente_Est","Modalidad"});
Statement st = con.createStatement();
Statement st2 = con.createStatement();
ResultSet rs = st.executeQuery("Query 1");
while (rs.next())
{
ResultSet rs2 = st2.executeQuery("Query2");
if (rs2.next())
{
if ("B".equals(rs2.getString("Estado")))
{
Pac = "Bloqueado";
}
else
{
Pac = rs2.getString("Usuario");
}
//No se como ingresar aquí alguna condición que me cambie la fila inmediatamente al cargarla dependiendo del estado de la misma, o cambiar celda por celda no importa
modelo.addRow(new Object[]{rs.getString("Ide"),
rs.getString("Habilita"),
rs.getString("Hora"),
rs2.getString("Id"),
Pac,
rs2.getString("Estado"),
rs2.getString("Modalidad")});
}
else
{
modelo.addRow(new Object[]{rs.getString("Ide"),
rs.getString("Habilita"),
rs.getString("Hora"),
"",
"",
"",
""});
}
}
He buscado por varios foros el getTableCellRenderer pero no se como implementarlo, puede alguien orientarme en como puedo hacerlo, desde ya muchas gracias
Valora esta pregunta


0