Rendering multiple data types in one JTable cell

I want to show graphics for example. gif and currency number in one jtable cell. below is the code for the cell renderer, it displays the currency as expected, but the image is distorted in the cell. Any suggestion

 public class CurrencyCellRenderer extends DefaultTableCellRenderer {

     private final ImageIcon cediImage =
         new ImageIcon (getClass().getResource("/resources/images/cedi.gif"));


     public CurrencyCellRenderer() {
         super();
         setHorizontalAlignment(SwingConstants.LEFT); 
     }

     @Override
     public void setValue(Object value) {
         if ((value != null) && (value instanceof Number)) {
             Number numberValue = (Number) value;
             NumberFormat formatter = NumberFormat.getCurrencyInstance(new Locale("ghs" ,"GH")); 
             value = formatter.format(numberValue.doubleValue());
         }
         super.setIcon(cediImage);
         super.setValue(value);
     }  

}

      

below is the code attaching cellrenderer to table

    jTable.setDefaultRenderer(Double.class , new CurrencyCellRenderer());

      

Thank you all.

+3


source to share





All Articles