Java FX ProgressIndicator
Pessoal estou precisando uma ajuda com esse JavaFX aqui...
No caso eu tenho um tela criada com SceneBuilder com ProgressIndicator e estou executando um processo que demora alguns menitos, gostaria de saber como faço para ele atualize a tela a cada iteração da minha repetição.
Exemplo:
For(int i = 0; i < 100; i++) {
ProgressIndicator.setProgress(i);
atualizaTela();
}
No caso eu tenho um tela criada com SceneBuilder com ProgressIndicator e estou executando um processo que demora alguns menitos, gostaria de saber como faço para ele atualize a tela a cada iteração da minha repetição.
Exemplo:
For(int i = 0; i < 100; i++) {
ProgressIndicator.setProgress(i);
atualizaTela();
}
Luis Calegari
Curtidas 0
Respostas
Ronaldo Filho
20/01/2016
Grande boa tarde,
Posta teu código da classe pra que seja mais fácil de entender.
Posta teu código da classe pra que seja mais fácil de entender.
GOSTEI 0
Edson Venancio
20/01/2016
Voce teria que usa uma Thread cara ..
GOSTEI 0
Luis Calegari
20/01/2016
Arquivo FXML
Controlador
<?xml version="1.0" encoding="UTF-8"?>
<?import java.lang.*?>
<?import java.util.*?>
<?import javafx.scene.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<AnchorPane id="AnchorPane" prefHeight="249.0" prefWidth="238.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/8.0.40" fx:controller="javafxapplication1.FXMLController">
<children>
<ProgressIndicator fx:id="pi" layoutY="14.0" prefHeight="166.0" prefWidth="238.0" progress="0.0" />
<Button fx:id="btn" layoutX="88.0" layoutY="209.0" mnemonicParsing="false" onAction="#btnOnClick" text="Button" />
</children>
</AnchorPane>
Controlador
@FXML
private ProgressIndicator pi;
@FXML
private Button btn;
@FXML
private void btnOnClick(ActionEvent event) {
pi.setMaxWidth(100);
for (int i = 0; i < 100; i++) {
pi.setProgress(pi.getProgress() + 1);
try {
Thread.sleep(100);
} catch (InterruptedException e) {
System.out.println(e.getLocalizedMessage());
}
System.out.println("Contador: " + i);
}
}
GOSTEI 0