Slider_ImageSetEffet1
 
Code:

package javafxtemplate1;
//Grid_Transform1.htm
import javafx.application.Application;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.scene.Node;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.Slider;
import javafx.scene.effect.ColorAdjust;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.GridPane;
import javafx.stage.Stage;

public class JavaFXTemplate1 extends Application {
ColorAdjust dyadjust = new ColorAdjust();
Node gnode =null;
Slider hueslider = new Slider(-1.0, 1.0, 0.0);
Slider contrastslider = new Slider(-1.0, 1.0, 0.0);
@Override
public void start(Stage primaryStage) {
//
//
GridPane root = new GridPane();
//GridPane controller = loadSlider(dyadjust);
Label label1 = new Label("Opacity Slider 0.25");
hueslider.setPrefWidth(450);
hueslider.setMajorTickUnit(0.10);hueslider.setShowTickMarks(true);
hueslider.setShowTickLabels(true);
//
contrastslider.setPrefWidth(450);
contrastslider.setMajorTickUnit(0.10);contrastslider.setShowTickMarks(true);
contrastslider.setShowTickLabels(true);
//
ImageView iv1 = new ImageView();
String path = "banner2B.jpg";
//loading image
Image image1 = new Image(JavaFXTemplate1.class.getResourceAsStream(path));
iv1.setImage(image1);
if (image1!= null) {
gnode = iv1;
label1.setText("load image " + path);
//dyadjust.hueProperty().bind(hueslider1.valueProperty());
}
hueslider.valueProperty().addListener(new ChangeListener<Number>() {
public void changed(ObservableValue<? extends Number> ov,
Number old_val, Number new_val) {
double xx = new_val.doubleValue();
//double yy = new_val.doubleValue();
dyadjust.hueProperty().bind(hueslider.valueProperty());
iv1.setEffect(dyadjust);
label1.setText(String.format("Scale hue %.2f", new_val));
} });

contrastslider.valueProperty().addListener(new ChangeListener<Number>() {
public void changed(ObservableValue<? extends Number> ov,
Number old_val, Number new_val) {
//double xx = new_val.doubleValue();
double yy = new_val.doubleValue();
dyadjust.contrastProperty().bind(contrastslider.valueProperty());
iv1.setEffect(dyadjust);
label1.setText(String.format("Scale contrast %.2f", new_val));
} });
//
root.setVgap(10);
root.add(label1,0,0);
root.add(iv1,0,1);
root.addRow(2,hueslider);
root.addRow(3,contrastslider);
//
Scene scene = new Scene(root, 550,300);
primaryStage.setScene(scene);
primaryStage.setTitle("Slider::Grid");
primaryStage.show();

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

}

displays:

adjust hues

adjust contrast