JavaFX | Clase de entrada de color

La clase ColorInput es parte de JavaFX. Se utiliza para crear un efecto que representa una región rectangular, rellena con el Color dado. Es equivalente a representar un rectángulo relleno en una imagen y usar un efecto ImageInput, excepto que es más conveniente y potencialmente mucho más eficiente. Se pasa principalmente a los otros efectos como entrada.

Constructores de la clase:

  1. ColorInput() : crea una nueva instancia de ColorInput con parámetros predeterminados.
  2. ColorInput(doble x, doble y, doble ancho, doble altura, Paint paint) : crea una nueva instancia de ColorInput con x, y, ancho, alto y pintura especificados.

Métodos comúnmente utilizados:

Método Descripción
obtenerX() Obtiene el valor de la propiedad x.
obtenerY() Obtiene el valor de la propiedad y.
setHeight(valor doble) Establece el valor de la altura de la propiedad.
setPaint(valor de pintura) Establece el valor de la propiedad paint.
setWidth (valor doble) Establece el valor del ancho de la propiedad.
setX(valor doble) Establece el valor de la propiedad x.
setY(doble valor) Establece el valor de la propiedad y.
obtenerAltura() Obtiene el valor de la propiedad height.
obtener pintura() Obtiene el valor de la propiedad paint.
obtenerAncho() Obtiene el valor de la propiedad width
  1. Programa Java para demostrar la clase ColorInput: en este programa, se crea el efecto ColorInput y luego establecemos el color, la altura, el ancho y las coordenadas de la región de ColorInput. Se crea un objeto de grupo y un objeto de escena. Se agrega una escena al escenario y luego establecemos el título del escenario.

    // Java program to Demonstrate ColorInput class
    import javafx.application.Application;
    import javafx.scene.Group;
    import javafx.scene.Scene;
    import javafx.scene.effect.ColorInput;
    import javafx.scene.paint.Color;
    import javafx.scene.shape.Rectangle;
    import javafx.stage.Stage;
      
    public class ColorInputDemo extends Application {
      
        // Main Method 
        public static void main(String[] args)
        {
      
            // launch the application
            launch(args);
        }
      
        // launch the application
        public void start(Stage primaryStage) throws Exception
        {
      
            // Instantiating the ColorInput class
            ColorInput color = new ColorInput();
      
            // set the color
            color.setPaint(Color.GREEN);
      
            // sets the height of the region of color input
            color.setHeight(50);
      
            // sets the width of the region of color input
            color.setWidth(200);
      
            // set the coordinates of the Colorinput
            color.setX(90);
            color.setY(140);
      
            // create a rectangle
            Rectangle rect = new Rectangle();
      
            // applying coloradjust effect
            rect.setEffect(color);
      
            // create a group object
            Group root = new Group();
      
            // create a scene object
            Scene scene = new Scene(root, 400, 300);
      
            root.getChildren().add(rect);
      
            // adding scene to the stage
            primaryStage.setScene(scene);
      
            // set title of the stage
            primaryStage.setTitle("ColorInput Demo");
      
            primaryStage.show();
        }
    }

    Producción:

  2. Programa Java para aplicar la clase ColorInput al rectángulo creado haciendo clic en el botón usando EventHandler: En este programa, primero establecemos la altura, el ancho y las coordenadas de un rectángulo y luego creamos un rectángulo de la misma dimensión. Ahora, cree un botón y configure los diseños del botón. Ahora, usando EventHandler, primero, crea una instancia de una clase ColorInput usando la dimensión adecuada y luego establece ColorInput Effect en el botón. Cree un objeto de grupo y agréguele un botón y un rectángulo. Luego crea una escena y agrégala al escenario.

    // Java program to apply ColorInput class to 
    // the created rectangle by clicking on the 
    // button using EventHandler
    import javafx.application.Application;
    import javafx.event.ActionEvent;
    import javafx.event.EventHandler;
    import javafx.scene.Group;
    import javafx.scene.Scene;
    import javafx.scene.control.Button;
    import javafx.scene.effect.ColorInput;
    import javafx.scene.paint.Color;
    import javafx.scene.shape.Rectangle;
    import javafx.stage.Stage;
      
    public class ColorInputExample extends Application {
      
        public void start(Stage stage)
        {
      
            double x = 10;
            double y = 10;
            double w = 40;
            double h = 180;
      
            // Rectangle
            Rectangle rect = new Rectangle(x, y, w, h);
            rect.setFill(Color.WHITE);
            rect.setStrokeWidth(1);
            rect.setStroke(Color.BLACK);
      
            // Button
            Button button = new Button("Click To See the Effects!");
      
            // set button layout coordinates
            button.setLayoutX(100);
            button.setLayoutY(30);
      
            button.setPrefSize(250, 150);
      
            button.setOnAction(new EventHandler<ActionEvent>() {
      
                public void handle(ActionEvent event)
                {
                    // instantiating the colorinput class
                    ColorInput colorInput = new ColorInput(x, y, 
                                         w, h, Color.STEELBLUE);
      
                    // Setting ColorInput effect
                    button.setEffect(colorInput);
                }
            });
      
            // create the Group object
            Group root = new Group();
      
            root.getChildren().addAll(button, rect);
      
            Scene scene = new Scene(root, 450, 300);
            stage.setTitle("JavaFX ColorInput Effect");
            stage.setScene(scene);
      
            stage.show();
        }
      
        // Main Method
        public static void main(String args[])
        {
      
            // Launch the application
            launch(args);
        }
    }

    Producción:

Nota: Es posible que los programas anteriores no se ejecuten en un IDE en línea. Utilice un compilador fuera de línea.

Referencia: https://docs.oracle.com/javafx/2/api/javafx/scene/effect/ColorInput.html

Publicación traducida automáticamente

Artículo escrito por ukasp y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *