I need to start a progressBar when I execute a method and it ends when the method finishes processing, this is the method.
@FXML
private void procesarImagen(ActionEvent event) {
ArrayList<String> col = null;
DecimalFormat df = new DecimalFormat("##.###");
int cont = 0;
int acum = 0;
procesamientoImagen pi = new procesamientoImagen();
Map<String, Integer> color = pi.procesmaientoImagen(a);
TreeMap<String, Integer> treeMap = new TreeMap<>(color);
for (Map.Entry<String, Integer> entry : treeMap.entrySet()) {
// labelColor.setStyle("-fx-background-color:"+entry.getKey());
acum = acum+entry.getValue();
}
System.out.println("Total Colores: "+acum);
pb = new ProgressBar(0);
int prog = 0;
col = new ArrayList<>();
ci = FXCollections.observableArrayList();
for (Map.Entry<String, Integer> entry : treeMap.entrySet()) {
// labelColor.setStyle("-fx-background-color:"+entry.getKey());
// System.out.println("Color: "+entry.getKey()+": "+entry.getValue());
String colorsImg = entry.getKey();
float total = (float) (entry.getValue()*100)/acum ;
col.add(entry.getKey());
ci.add(new colorInf("0",df.format(total),colorsImg));
pb.setProgress(prog++);
// System.out.println("% "+df.format(total));
}
TblColor.setItems(ci);
// PLANTAS SANAS
rangosPlagas r = new rangosPlagas();
ArrayList<String> rango =null;
procesamientoImagen pi2 = new procesamientoImagen();
Map<String, Integer> color2 = pi2.procesmaientoImagen(r.plantaSana());
rango = new ArrayList<>();
TreeMap<String, Integer> treeMap2 = new TreeMap<>(color2);
for (Map.Entry<String, Integer> entry : treeMap2.entrySet()) {
// System.out.println(entry.getKey());
rango.add(entry.getKey());
}
int resultado = 0;
for (String co : col) {
for (String ra : rango) {
if(ra.equals(co) ){
// System.out.println(ra+"Esta en el rango");
resultado = 1;
}
}
if (resultado == 1) {
tx.setText("Plantas Sanas");
colorR.setStyle("-fx-background-color: #2a2475");
}
}
// PLANTAS SANAS
ArrayList<String> rangoTrips =null;
procesamientoImagen pi3 = new procesamientoImagen();
Map<String, Integer> color3 = pi3.procesmaientoImagen(r.trips());
rangoTrips = new ArrayList<>();
TreeMap<String, Integer> treeMap3 = new TreeMap<>(color3);
for (Map.Entry<String, Integer> entry : treeMap3.entrySet()) {
// System.out.println(entry.getKey());
rangoTrips.add(entry.getKey());
}
int resultado2 = 0;
for (String co : col) {
for (String ra : rangoTrips) {
if(ra.equals(co) ){
// System.out.println(ra+"Esta en el rango");
resultado2 = 1;
}
}
}
if (resultado2 == 1) {
txTrips.setText("Posibles Incidencias de Trips en la planta");
colorRT.setStyle("-fx-background-color: #6b3d44");
}
// PLANTAS SANAS
ArrayList<String> rangoMinador =null;
procesamientoImagen pi4 = new procesamientoImagen();
Map<String, Integer> color4 = pi4.procesmaientoImagen(r.minador());
rangoMinador = new ArrayList<>();
TreeMap<String, Integer> treeMap4 = new TreeMap<>(color4);
for (Map.Entry<String, Integer> entry : treeMap4.entrySet()) {
// System.out.println(entry.getKey());
rangoMinador.add(entry.getKey());
}
int resultado3 = 0;
for (String co : col) {
for (String ra : rangoMinador ) {
if(ra.equals(co) ){
// System.out.println(ra+"Esta en el rango");
resultado3 = 1;
}
}
}
if (resultado3 == 1) {
txMinador.setText("Posibles Incidencias de Minador en la planta");
colorRM.setStyle("-fx-background-color: #2f527c");
}
// PLANTAS SANAS
ArrayList<String> rangoPasador =null;
procesamientoImagen pi5 = new procesamientoImagen();
Map<String, Integer> color5 = pi5.procesmaientoImagen(r.pasador());
rangoPasador = new ArrayList<>();
TreeMap<String, Integer> treeMap5 = new TreeMap<>(color5);
for (Map.Entry<String, Integer> entry : treeMap5.entrySet()) {
// System.out.println(entry.getKey());
rangoPasador.add(entry.getKey());
}
int resultado4 = 0;
for (String co : col) {
for (String ra : rangoPasador ) {
if(ra.equals(co) ){
// System.out.println(ra+"Esta en el rango");
resultado4 = 1;
}
}
}
if (resultado4 == 1) {
txPasador.setText("Posibles Incidencias de Pasador en la planta");
colorRP.setStyle("-fx-background-color: #739bbf");
}
modificarCelda(colorFull);
trips.setVisible(true);
pasador.setVisible(true);
minador.setVisible(true);
}