
Pintar celda
Publicado por Luis Eduardo (9 intervenciones) el 19/10/2015 19:45:34
Buenos días quisiera saber como le puedo para pintar el fondo de una celda si el valor es menor a 3 con java

Valora esta pregunta


0
private DefaultTableCellRenderer Renderer=new DefaultTableCellRenderer(){
@Override public Component getTableCellRendererComponent(JTable table,Object value,boolean isSelected,boolean hasFocus,int row,int column){
super.getTableCellRendererComponent(table,value,isSelected,hasFocus,row,column);
if(column==10){
double valor=(double)value;
if(valor<3){
setBackground(java.awt.Color.red);
}
else{
setBackground(java.awt.Color.white);
}
return this;
}
};
table.setDefaultRenderer(Object.class,Renderer);
public DefaultTableCellRenderer formato_tablas = new DefaultTableCellRenderer(){
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int col) {
super.getTableCellRendererComponent(table,value,isSelected,hasFocus,row,col);
if (col==10){
double valor = (double)value;
if(valor<=3){
setBackground(Color.black);
setForeground(Color.white);
}else{
if (valor<=5){
setBackground(Color.red);
setForeground(Color.black);
}else{
if (valor<=10){
setBackground(Color.yellow);
}
else{
if (valor<=15){
setBackground(Color.white);
}
else{
if (valor<=15){
setBackground(Color.green);
}
}
}
}
}
}
return this;
}
};
public DefaultTableCellRenderer formato_tablas = new DefaultTableCellRenderer(){
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int col) {
super.getTableCellRendererComponent(table,value,isSelected,hasFocus,row,col);
if (col==10){
double valor = (double)value;
if(valor<=3){
setBackground(Color.black);
setForeground(Color.white);
}else{
if (valor<=5){
setBackground(Color.red);
setForeground(Color.black);
}else{
if (valor<=10){
setBackground(Color.yellow);
}
else{
if (valor<=15){
setBackground(Color.white);
}
else{
if (valor<=15){
setBackground(Color.green);
}
}
}
}
}
}
else{
setBackground(Color.white);
setForeground(Color.black);
}
return this;
}
};
table.addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent Mouse_evt) {
JTable table =(JTable) Mouse_evt.getSource();
String no_material = "";
Point point = Mouse_evt.getPoint();
int row = table.rowAtPoint(point);
if (Mouse_evt.getClickCount() == 1) {
no_material = (String) table.getValueAt(table.getSelectedRow(),0);
}
material(no_material);//------------el valor obtenido a mi clase material
}
});
public void material(String material /*ring comentario*/){
table.addKeyListener(new KeyAdapter() {
public void keyReleased(KeyEvent e) {
int p = e.getKeyCode();
String mat = material;
String comentario =(String) table.getValueAt(table.getSelectedRow(),16);
if(p==KeyEvent.VK_ENTER){
e.consume();
//JOptionPane.showMessageDialog(null,mat+comentario);
try{
String strsql = "UPDATE table_6 set Comments = '"+ comentario+"' WHERE material = '"+mat+"'";
System.out.println(strsql);
PreparedStatement pstm = cn.getConnection().prepareStatement(strsql);
pstm.executeUpdate();
}
catch(SQLException e1){
System.out.println(e1);
}
}
}
});
String material;
table.addMouseListener(new MouseAdapter(){
public void mousePressed(MouseEvent Mouse_evt){
JTable table=(JTable)Mouse_evt.getSource();
Point point=Mouse_evt.getPoint();
int row=table.rowAtPoint(point);
if (Mouse_evt.getClickCount() == 1) {
material=(String)table.getValueAt(table.getSelectedRow(),0);
}
}
});
table.addKeyListener(new KeyAdapter(){
public void keyReleased(KeyEvent e){
int p=e.getKeyCode();
String comentario=(String)table.getValueAt(table.getSelectedRow(),16);
if(p==KeyEvent.VK_ENTER){
e.consume();
//JOptionPane.showMessageDialog(null,mat+comentario);
try{
String strsql="UPDATE table_6 set Comments='"+comentario+"' WHERE material='"+material+"'";
System.out.println(strsql);
PreparedStatement pstm=cn.getConnection().prepareStatement(strsql);
pstm.executeUpdate();
}
catch(SQLException e1){
System.out.println(e1);
}
}
}
});