Introduktion til JavaFX Color

I JavaFX kan farve bruges til at udfylde de forskellige former som rektangel, ellipse, cirkel osv. Ved hjælp af forskellige metoder er det muligt at fremstille vores farver. Når det er lavet, kan det overføres til genstanden for maling i metoden setFill (). I dette dokument vil vi diskutere flere teknikker til at skabe farve.

Sådan oprettes farve i JavaFX?

Som allerede nævnt kan farver fremstilles ved hjælp af forskellige metoder:

1. Brug af farvenavn

I denne metode bruges farvenavnet til at oprette en farve. Det gøres ved hjælp af klassen javafx.scene.paint.Color, hvor alle farver er tilgængelige som egenskaber for klassen. Farvenavn kan overføres til objektet af malingsklasse i metoden setFill (). Her er et eksempel på at oprette farve ved hjælp af et farvenavn.

Kode:

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.effect.DropShadow;
import javafx.scene.effect.Shadow;
//class that extends the application class
public class JavaFXColorExample extends Application (
//application starts at this point
@Override
public void start(Stage s) (
//create a group gp
Group gp = new Group();
//set the title
s.setTitle("Color sample using color name");
//create a rectangle r1
Rectangle r1 = new Rectangle();
//set the x coordinate of rectangle r1
r1.setX(50);
//set the x coordinate of rectangle r1
r1.setY(20);
//set the width and height of rectangle r1
r1.setWidth(110);
r1.setHeight(140);
//set the color as red by passing color name
r1.setFill(Color.RED);
//set an effect
r1.setEffect(new DropShadow());
//create a rectangle r2
Rectangle r2 = new Rectangle();
//set the x coordinate of rectangle r2
r2.setX(60);
//set the x coordinate of rectangle r2
r2.setY(60);
//set the width of rectangle r2
r2.setWidth(100);
//set the height of rectangle r2
r2.setHeight(150);
//set the color as GREEN by passing color name
r2.setFill(Color.GREEN);
//set an effect
r2.setEffect(new DropShadow());
//add children to the group
gp.getChildren().add(r1);
gp.getChildren().add(r2);
//create a scene sc
Scene sc = new Scene(gp, 700, 450);
//set the scene for the stage
s.setScene(sc);
//display the results
s.show();
)
public static void main(String() args) (
launch (args);
)
)

Produktion:

2. Brug af webfarve

Den næste metode til oprettelse af farve er ved hjælp af en webfarve. Her vil Color.web () -metoden i klassen javafx.scene.paint.color blive brugt, hvor 2 parametre vil blive videregivet, såsom farves hexværdi og en alfakanal. Den anden parameter Alpha-kanal er en valgfri parameter, der angiver farvernes opacitet. Alpha har et interval af værdier 0, 0 til 1, 0, og det kan også være implicit eller eksplicit som vist nedenfor.

Syntaks:

//Red color and Alpha is implicit
Color.web("#ff0000")
//Red color and Alpha is explicit
Color.web("#ff0000", 1)

Kode:

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.effect.DropShadow;
import javafx.scene.effect.Shadow;
//class that extends the application class
public class JavaFXColorExample extends Application (
//application starts at this point
@Override
public void start(Stage s) (
//create a group gp
Group gp = new Group();
//set the title of the stage s
s.setTitle("Color sample using web color");
//create a rectangle r1
Rectangle r1 = new Rectangle();
//set the x coordinate of rectangle r1
r1.setX(50);
//set the x coordinate of rectangle r1
r1.setY(20);
//set the width of rectangle r1
r1.setWidth(100);
//set the height of rectangle r1
r1.setHeight(150);
//set the color of rectangle r1 as red by using color.web method
r1.setFill(Color. web ("#ff0000", 1));
//set an effect
r1.setEffect(new DropShadow());
//create a rectangle r2
Rectangle r2 = new Rectangle();
//set the x coordinate of rectangle r2
r2.setX(60);
//set the x coordinate of rectangle r2
r2.setY(60);
//set the width of rectangle r2
r2.setWidth(100);
//set the height of rectangle r2
r2.setHeight(150);
//set the color of rectangle r2 as black by using color.web method
r2.setFill(Color. web ("#000000", 1));
//set an effect
r2.setEffect(new DropShadow());
//add children to the group
gp.getChildren().add(r1);
gp.getChildren().add(r2);
//create a scene sc
Scene sc = new Scene(gp, 700, 450);
//set the scene for the stage
s.setScene(sc);
//display the results
s.show();
)
public static void main(String() args) (
launch(args); ))

Produktion:

3. Brug af HSB-farve

I JavaFX kan farve også oprettes ved hjælp af en kombination af farvetone, mætning og lysstyrke, der er kendt som HSB-farve. Det gøres ved hjælp af klassen javafx.scene.paint.Color, der består af en metode Color.hsb (), der indtaster 3 heltal såsom h, s og b.

Kode:

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.effect.DropShadow;
import javafx.scene.effect.Shadow;
//class that extends the application class
public class JavaFXColorExample extends Application (
//application starts at this point
@Override
public void start(Stage s) (
//create a group gp
Group gp = new Group();
//set the title of the stage s
s.setTitle("Color sample using HSB");
//create a rectangle r1
Rectangle r1 = new Rectangle();
//set the x coordinate of rectangle r1
r1.setX(50);
//set the x coordinate of rectangle r1
r1.setY(20);
//set the width of rectangle r1
r1.setWidth(100);
//set the height of rectangle r1
r1.setHeight(150);
//set an effect
r1.setEffect(new DropShadow());
//add children to the group
gp.getChildren().add(r1);
//create a scene sc
Scene sc = new Scene(gp, 700, 450, Color. hsb (180, 0, 1));
//set the scene
s.setScene(sc);
//display the results
s.show();
)
public static void main(String() args) (
launch (args);
)
)

Produktion:

4. Brug af RGB-farve

En af de mest almindelige metoder til at skabe farve er RGB-farvesystem, hvor rød, grøn og blå er de 3 komponenter. Det gøres ved hjælp af klasse javafx.scene.paint.Color, der består af en metode rgb (), der indtaster 3 heltal r, g og b.

Kode:

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.effect.DropShadow;
import javafx.scene.effect.Shadow;
//class that extends the application class
public class JavaFXColorExample extends Application (
//application starts at this point
@Override
public void start(Stage s) (
//create a group gp
Group gp = new Group();
//set the title of the stage s
s.setTitle("Color sample using RGB");
//create a rectangle r
Rectangle r1 = new Rectangle();
//set the x coordinate of rectangle r1
r1.setX(50);
//set the x coordinate of rectangle r1
r1.setY(20);
//set the width and height of rectangle r1
r1.setWidth(100);
r1.setHeight(140);
r1.setFill(Color. rgb (20, 125, 10, 0.63));
//add children to the group
gp.getChildren().add(r1);
//create a scene sc
Scene sc = new Scene(gp, 700, 450);
//set the scene
s.setScene(sc);
//display the results
s.show();
)
public static void main(String() args) (
launch (args);
)
)

Produktion:

Konklusion

Farver bruges til at udfylde figurerne, og det kan gøres ved hjælp af forskellige metoder. Alle disse metoder behandles i dette dokument.

Anbefalet artikel

Dette er en guide til JavaFX Color. Her diskuterer vi at skabe farve i JavaFX ved hjælp af forskellige metoder sammen med kodeimplementering og output. Du kan også gennemgå vores foreslåede artikler for at lære mere -

  1. Top 5 JavaFX-layout
  2. JavaFX-applikationer med funktioner
  3. JavaFX vs Swing | Top 6 sammenligning
  4. JavaFX-etiket (eksempler)
  5. Sådan oprettes checkbox i JavaFX med eksempler?
  6. Eksempler på afkrydsningsfelt i Bootstrap
  7. Komplet guide til metoder til JavaFX VBox
  8. Vejledning til menu i JavaFX med eksempler?

Kategori: