Inleiding tot JavaFX Color

In JavaFX kan kleur worden gebruikt om de verschillende vormen te vullen, zoals rechthoek, ellips, cirkel, enz. Door verschillende methoden te gebruiken, is het mogelijk om onze kleurschakeringen te maken. Als het eenmaal is gemaakt, kan het worden doorgegeven aan het object van verf in de methode setFill (). In dit document zullen we verschillende technieken bespreken om kleur te creëren.

Hoe maak je kleur in JavaFX?

Zoals reeds gezegd, kunnen kleuren op verschillende manieren worden gemaakt:

1. Gebruik de naam van de kleur

Bij deze methode wordt de kleurnaam gebruikt om een ​​kleur te maken. Het wordt gedaan met behulp van klasse javafx.scene.paint.Color waarbij alle kleuren beschikbaar zijn als eigenschappen van de klasse. Kleurnaam kan worden doorgegeven aan het object van de Paint-klasse in de methode setFill (). Hier is een voorbeeld van het maken van kleur met een kleurnaam.

Code:

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);
)
)

Output:

2. Gebruik webkleur

De volgende methode voor het maken van kleur is met behulp van een webkleur. Hier wordt de methode Color.web () in de klasse javafx.scene.paint.color gebruikt waar 2 parameters worden doorgegeven, zoals de hexadecimale waarde van kleur en een alfakanaal. De tweede parameter Alfakanaal is een optionele parameter die de dekking van de kleur aangeeft. Alpha heeft een bereik van waarden 0, 0 tot 1, 0 en kan ook impliciet of expliciet zijn, zoals hieronder wordt getoond.

Syntaxis:

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

Code:

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); ))

Output:

3. HSB-kleur gebruiken

In JavaFX kan kleur ook worden gemaakt met behulp van de combinatie Tint, Verzadiging en Helderheid die bekend staat als HSB-kleur. Het wordt gedaan met behulp van klasse javafx.scene.paint.Color die bestaat uit een methode Color.hsb () die 3 gehele getallen invoert, zoals h, s en b.

Code:

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);
)
)

Output:

4. RGB-kleur gebruiken

Een van de meest voorkomende methoden om kleuren te maken is het RGB-kleursysteem waarbij rood, groen en blauw de 3 componenten zijn. Het wordt gedaan met behulp van klasse javafx.scene.paint.Color die bestaat uit een methode rgb () die 3 gehele getallen r, g en b invoert.

Code:

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);
)
)

Output:

Conclusie

Kleuren worden gebruikt om de vormen te vullen en dit kan op verschillende manieren worden gedaan. Al deze methoden worden in dit document behandeld.

Aanbevolen artikel

Dit is een handleiding voor JavaFX Color. Hier bespreken we het creëren van kleur in JavaFX met behulp van verschillende methoden samen met de implementatie en uitvoer van code. u kunt ook onze voorgestelde artikelen doornemen voor meer informatie -

  1. Top 5 JavaFX-indelingen
  2. JavaFX-toepassingen met functies
  3. JavaFX vs Swing | Top 6 vergelijking
  4. JavaFX-label (voorbeelden)
  5. Hoe maak je een checkbox in JavaFX met voorbeelden?
  6. Voorbeelden van Checkbox in Bootstrap
  7. Volledige gids voor methoden van JavaFX VBox
  8. Handleiding voor het menu in JavaFX met voorbeelden?