I have a code and need to make some improvements, but I can not insert them correctly, I'm a beginner and I have some difficulties.
The software has:
- a class BeansClient with get and set;
- a class BeansTabela; AbstractTableModel constructor of type
arrays
- a method to fill the table of type
String sql
I am not able to enter the condition to color the lines. Can anyone help?
Murillo, as requested follows the information:
// jTable template
public void preencherTabela(String Sql) {
ArrayList dados = new ArrayList();
String [] colunas = new String []{"Matricula","Ativo","Nome","Data Matric.","Data Vencimento","Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"};
conex.conexao();
conex.executaSql(Sql);
try {
conex.rs.first();
do{
dados.add(new Object[]{conex.rs.getInt("id_cd"),conex.rs.getString("ativo_cd"),conex.rs.getString("nome_cd"),conex.rs.getString("dtmat_cd"),conex.rs.getString("dtvenc_cd"),conex.rs.getString("jan_cd"),conex.rs.getString("fev_cd"),conex.rs.getString("mar_cd"),conex.rs.getString("mai_cd"),conex.rs.getString("jun_cd"),conex.rs.getString("jul_cd"),conex.rs.getString("ago_cd"),conex.rs.getString("set_cd"),conex.rs.getString("out_cd"),conex.rs.getString("nov_cd"),conex.rs.getString("dez_cd")});
}while(conex.rs.next());
}catch(SQLException ex){
JOptionPane.showMessageDialog(rootPane,"Erro ao preencher arraylist"+ex);
}
BeansTabela modelo = new BeansTabela(dados, colunas);
jTableCadCliente.setModel(modelo);
jTableCadCliente.getColumnModel().getColumn(0).setPreferredWidth(65);
jTableCadCliente.getColumnModel().getColumn(0).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(1).setPreferredWidth(50);
jTableCadCliente.getColumnModel().getColumn(1).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(2).setPreferredWidth(170);
jTableCadCliente.getColumnModel().getColumn(2).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(3).setPreferredWidth(100);
jTableCadCliente.getColumnModel().getColumn(3).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(4).setPreferredWidth(100);
jTableCadCliente.getColumnModel().getColumn(4).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(5).setPreferredWidth(60);
jTableCadCliente.getColumnModel().getColumn(5).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(6).setPreferredWidth(60);
jTableCadCliente.getColumnModel().getColumn(6).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(7).setPreferredWidth(60);
jTableCadCliente.getColumnModel().getColumn(7).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(8).setPreferredWidth(60);
jTableCadCliente.getColumnModel().getColumn(8).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(9).setPreferredWidth(60);
jTableCadCliente.getColumnModel().getColumn(9).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(10).setPreferredWidth(60);
jTableCadCliente.getColumnModel().getColumn(10).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(11).setPreferredWidth(60);
jTableCadCliente.getColumnModel().getColumn(11).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(12).setPreferredWidth(60);
jTableCadCliente.getColumnModel().getColumn(12).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(13).setPreferredWidth(60);
jTableCadCliente.getColumnModel().getColumn(13).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(14).setPreferredWidth(60);
jTableCadCliente.getColumnModel().getColumn(14).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(15).setPreferredWidth(60);
jTableCadCliente.getColumnModel().getColumn(15).setResizable(true);
jTableCadCliente.getColumnModel().getColumn(16).setPreferredWidth(60);
jTableCadCliente.getColumnModel().getColumn(16).setResizable(true);
jTableCadCliente.getTableHeader().setReorderingAllowed(false);
jTableCadCliente.setAutoResizeMode(jTableCadCliente.AUTO_RESIZE_OFF);
jTableCadCliente.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
//jTableCadCliente.setBackground(Color.ORANGE); //
conex.desconecta();
}
//abaixo o metodo de seleção:
public BeansCliente filtro(BeansCliente mod) {
conex.conexao();
conex.executaSql("select *from clientesmilfe where nome_cd like'%"+mod.getPesquisa()+"%'");
try {
conex.rs.first();
mod.setId(conex.rs.getInt("id_cd"));
mod.setAtivo(conex.rs.getString("ativo_cd"));
mod.setNome(conex.rs.getString("nome_cd"));
mod.setDataMatricula(conex.rs.getString("dtmat_cd"));
mod.setDataVencimento(conex.rs.getString("dtvenc_cd"));
mod.setJaneiro(conex.rs.getString("jan_cd"));
mod.setFevereiro(conex.rs.getString("fev_cd"));
mod.setMarco(conex.rs.getString("mar_cd"));
mod.setAbril(conex.rs.getString("abr_cd"));
mod.setMaio(conex.rs.getString("mai_cd"));
mod.setJunho(conex.rs.getString("jun_cd"));
mod.setJulho(conex.rs.getString("jul_cd"));
mod.setAgosto(conex.rs.getString("ago_cd"));
mod.setSetembro(conex.rs.getString("set_cd"));
mod.setOutubro(conex.rs.getString("out_cd"));
mod.setNovembro(conex.rs.getString("nov_cd"));
mod.setDezembro(conex.rs.getString("dez_cd"));
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Cliente não cadastrado!");
}
conex.desconecta();
return mod;
}
Follow the supplementary information
jTable:
package modeloBeans;
import java.awt.Component;
import java.util.ArrayList;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.TableCellRenderer;
/**
*
* @author anild
*/
public class BeansTabela extends AbstractTableModel{
//arrayslist é uma coleção que pode armazenar qualquer tipo de objeto
//ela é um vetor do tipo string
private ArrayList linhas= null;
private String[] colunas= null;
//abaixo vamos criar o metodo
public BeansTabela(ArrayList lin, String[] col) {
setLinhas(lin);
setColunas(col);
}
public BeansTabela() {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
BeansTabela(String profissional_1, int i, String contador, double d) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
BeansTabela(BeansTabela tabc) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
/**
* @return the linhas
*/
public ArrayList getLinhas() {
return linhas;
}
/**
* @param linhas the linhas to set
*/
public void setLinhas(ArrayList linhas) {
this.linhas = linhas;
}
/**
* @return the colunas
*/
public String[] getColunas() {
return colunas;
}
/**
* @param colunas the colunas to set
*/
public void setColunas(String[] colunas) {
this.colunas = colunas;
}
//DAQUI PARA BAIXO É PARA EVITAR ERROS NOS METODOS CRIADOS ACIMA
@Override
public int getColumnCount() {
return colunas.length;
}
@Override
public int getRowCount() {
return linhas. size();
}
/**
*o metodo e o parametro int numCol é para pegar o nome da coluna
* @param numCol
* @return
*/
@Override
public String getColumnName(int numCol){
return colunas[numCol];
}
/**
*
* @param numLin
* @param numCol
* @return
*/
@Override
public Object getValueAt(int numLin, int numCol) {
Object[] linha = (Object[])getLinhas().get(numLin);
return linha[numCol];
}
}
Condition is the due date in arrears;