Slider_PI_ProgressBar2
  •   slider   syncs ->ProgressBar
  • b2.setOnAction(e ->slider.setValue(increment()));
    uses textProperty().bind of label controls.
  • public double increment(){
    .....
    label1.textProperty().bind(Bindings.format("Increment",
    "%.2f",p2.getProgress())
code:

package javafxtemplate1;
//Grid_Transform1.htm
import javafx.application.Application;
import javafx.beans.binding.Bindings;
import javafx.event.ActionEvent;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.ProgressBar;
import javafx.scene.control.ProgressIndicator;
import javafx.scene.control.Slider;
import javafx.scene.layout.GridPane;
import javafx.stage.Stage;

/**
*
* @author Manas9
*/
public class JavaFXTemplate1 extends Application {
private static double count1 = 0.1;
ProgressBar p2 = new ProgressBar(0);
ProgressIndicator pi1 = new ProgressIndicator();
Slider slider = new Slider(0, 1, 0.0);
GridPane root = new GridPane();
Label label1 = new Label("Progress");
//
@Override
public void start(Stage primaryStage) {
//width, height
p2.setMinSize(200,50);
p2.setProgress(count1);
pi1.setMinSize(200, 200);
Button b1 = new Button("test-PI");
Button b2 = new Button("test-slider");
//b1.setOnAction(e ->p2.setProgress(increment()));
b2.setOnAction(e ->slider.setValue(increment()));
//Slider slider = new Slider(0, 1,increment());
slider.setShowTickMarks(true);
slider.setShowTickLabels(true);
slider.setMajorTickUnit(0.25f);
slider.setBlockIncrement(0.1f);
//
root.setHgap(30);
root.setVgap(50);
//root.addRow(0, new Label(" Progress:"+ p2.getProgress()),
// p2, b1);
root.addRow(0, label1, p2, b2);
root.addRow(1, pi1, slider);
root.setStyle("-fx-padding: 10;" +
"-fx-border-style: solid inside;" +
"-fx-border-width: 2;" +
"-fx-border-insets: 5;" +
"-fx-border-radius: 15;" +
"-fx-border-color: blue;");

Scene scene = new Scene(root, 550,300);
primaryStage.setScene(scene);
primaryStage.setTitle("Progressbar Indicator");
primaryStage.show();
}

public static void main(String[] args) {
launch(args);
}


public double increment(){
double d1 = p2.getProgress();
if(d1 <= 1)
{
d1 = d1 + count1;
//label1.setText("Increment " + String.format( "%.2f",p2.getProgress()));
p2.setProgress(d1);
pi1.setProgress(d1);
slider.setValue(d1);
label1.textProperty().bind(Bindings.format("PI %.2f",
p2.getProgress()
)
);

}
else
{
d1 = count1 + d1;
if (d1 >= 1.0) {
d1 = 1.0;
p2.setProgress(d1);
pi1.setProgress(d1);
slider.setValue(Math.round(d1));}
//label1.setText("Increment " + String.format( "%.2f",p2.getProgress()));
label1.textProperty().bind(
Bindings.format("Increment","%.2f",
p2.getProgress()
)
);

}
return d1;
}

}
 

 

displays: Click on the test-slider button