Fórum Java FX ProgressIndicator #543156
20/01/2016
0
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
Curtir tópico
+ 0Posts
20/01/2016
Ronaldo Filho
Posta teu código da classe pra que seja mais fácil de entender.
Gostei + 0
20/01/2016
Edson Venancio
Gostei + 0
21/01/2016
Luis Calegari
<?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
Clique aqui para fazer login e interagir na Comunidade :)