JavaFX TableColumn Formato Numérico y Alineación de Columna

Al Grano!!!!

Para dar formato numérico... se utiliza la propiedad "setCellValueFactory"... ojo ... esta es la que se utiliza tanto para formato como para modificar el valor que se muestra en la Tabla... ya que se puede modificar el valor que devuelve "arg0".

       ColCantidad.setCellValueFactory(new Callback<TableColumn.CellDataFeatures<Movinventario, String>, ObservableValue<String>>()
    {

@Override
public ObservableValue<String> call(
CellDataFeatures<Movinventario, String> arg0) {
// TODO Auto-generated method stub
DecimalFormat xx = new DecimalFormat("###,###,##0.00");
return new SimpleStringProperty(""+xx.format(arg0.getValue().getCantidad()));
}
    });      


Esta propiedad es distinta a la anterior... ojo... es "setCellFactory"... y en internet he conseguido muchas formas para tratar de alinear la columna y ninguna me corrió... siempre salía en blanco la columna o generaba "runtime error"... en todo caso... aquí se define la propiedad y la misma hace llamado a un método que se encuentra más abajo...

    ColCantidad.setCellFactory(new Callback<TableColumn<Movinventario, String>, TableCell<Movinventario, String>>() {
@Override
public TableCell<Movinventario, String> call(
TableColumn<Movinventario, String> arg0) {
// TODO Auto-generated method stub
return new TableCellFormat();
}
       });


Este es el método que realmente devuelve la celda de la columna alineada...  Se puede cambiar a gusto la alineación...

    private class TableCellFormat extends TableCell<Movinventario, String>{
        @Override
        protected void updateItem(String item, boolean empty) {
            super.updateItem(item, empty);
            this.setText(item);
            this.setAlignment(Pos.BASELINE_RIGHT);
        }
    }


Comentarios

Entradas populares de este blog

Recuperar base de datos mysql desde la carpeta data

Imagen de Fondo en Reporte iReport de JasperReport

Sistema de Gestión de Laboratorio Clínico TICLAB