JavaFX setFill() Methode
Die Methode setFill()
wird verwendet, um die Farben in Formen und anderen Elementen in JavaFX zu füllen. Dieses Tutorial demonstriert die Verwendung der setFill()
-Methode in JavaFX.
JavaFX setFill()
Methode
Die Methode setFill()
kann die Formen in JavaFX mit einheitlichen Bildmustern und Verlaufsmustern füllen. Um die Methode setFill()
zu verwenden, benötigen wir das Paket JavaFX.scene.paint
.
Mit setFill()
können die Klassen wie Shape
, Text
etc. mit Farben gefüllt werden.
Syntax:
//Setting color to the text
Color color = new Color.Red
text.setFill(color);
Die obige Syntax verwendet die Klasse Color
aus dem Farbpaket, um die Farbe anzugeben und sie mit der Methode setFill()
in den Text einzufügen. Im Folgenden sind die Schritte zum Füllen der Szene mit Farbe unter Verwendung der Methode setFill
beschrieben.
- Erstellen Sie eine Klasse, die die Klasse Application erweitert und die Methode
start()
implementiert. - Erstellen Sie eine Gruppe, indem Sie die Klasse
Group
instanziieren. - Erstellen Sie eine Szene, indem Sie die Klasse
Scene
instanziieren und ihr dieGroup
übergeben. - Füllen Sie die Szene mit der Methode
setFill
mit Farben. - Erstellen Sie eine Form, einen Kreis, ein Rechteck usw. und fügen Sie die Form der
Group
hinzu. - Übergeben Sie die
scene
an die Bühne und zeigen Sie die Bühne mit der MethodeShow
an. - Starten Sie die Anwendung in der
main
-Methode.
Sehen wir uns ein Beispiel an, das auf den obigen Schritten basiert.
Beispielcode:
package delftstack;
import javafx.application.Application;
import javafx.scene.*;
import javafx.scene.paint.Color;
import javafx.scene.shape.*;
import javafx.stage.Stage;
public class JavaFX_SetFill extends Application {
@Override
public void start(Stage DemoStage) {
Group DemoGroup = new Group();
Scene DemoScene = new Scene(DemoGroup, 200, 150);
DemoScene.setFill(Color.LIGHTBLUE);
Circle DemoCircle = new Circle(100, 100, 80, Color.RED);
DemoGroup.getChildren().add(DemoCircle);
DemoStage.setScene(DemoScene);
DemoStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
Der obige Code erstellt eine Szene mit einer Kreisform. Es verwendet die Methode setFill
, um die Szene mit Farbe zu füllen.
Ausgabe:
Versuchen wir, die Form und den Text mit der Methode setFill()
mit Farbe zu füllen.
Beispielcode:
package delftstack;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.scene.text.Font;
import javafx.scene.text.Text;
import javafx.stage.Stage;
public class JavaFX_SetFill extends Application {
@Override
public void start(Stage DemoStage) {
// Draw a Square
Rectangle Square = new Rectangle();
// Set the properties of the Square
Square.setX(200.0f);
Square.setY(200.0f);
Square.setWidth(300.0f);
Square.setHeight(300.0f);
// Set color to the Square
Square.setFill(Color.LIGHTBLUE);
// Set the stroke width
Square.setStrokeWidth(3);
// Set color to the stroke
Square.setStroke(Color.LIGHTGREEN);
// Draw a text
Text DemoText = new Text("This is a colored Square");
// Set the font of the text
DemoText.setFont(Font.font("Edwardian Script ITC", 60));
// Set the position of the text
DemoText.setX(155);
DemoText.setY(50);
// Set color to the text
DemoText.setFill(Color.BEIGE);
DemoText.setStrokeWidth(2);
DemoText.setStroke(Color.LIGHTBLUE);
// Create a Group object
Group Group_Root = new Group(Square, DemoText);
// Create a scene object
Scene DemoScene = new Scene(Group_Root, 600, 300);
// Set title to the Stage
DemoStage.setTitle("SetFill Example");
// Add scene to the stage
DemoStage.setScene(DemoScene);
// Display the contents of the stage
DemoStage.show();
}
public static void main(String args[]) {
launch(args);
}
}
Der obige Code erstellt ein Quadrat und einen Text und verwendet dann die Methode setfill
, um das Quadrat mit Farbe zu füllen. Es verwendet auch die Methode setStroke
für die Grenzen.
Ausgabe:
Die Methode setFill
kann auch einen Bildverlauf mit der Form oder dem Text füllen.
Beispielcode:
package delftstack;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.image.Image;
import javafx.scene.paint.Color;
import javafx.scene.paint.ImagePattern;
import javafx.scene.shape.Rectangle;
import javafx.scene.text.Font;
import javafx.scene.text.Text;
import javafx.stage.Stage;
public class JavaFX_SetFill extends Application {
@Override
public void start(Stage DemoStage) throws FileNotFoundException {
// Draw a Square
Rectangle Square = new Rectangle();
// Set the properties of the Square
Square.setX(200.0f);
Square.setY(200.0f);
Square.setWidth(300.0f);
Square.setHeight(300.0f);
// Draw a text
Text DemoText = new Text("This is a Gradient Square");
// Set the font of the text
DemoText.setFont(Font.font("Edwardian Script ITC", 60));
// Set the position of the text
DemoText.setX(155);
DemoText.setY(50);
// Set the image pattern
Image DemoImage = new Image(new FileInputStream("Delftstack.png"));
ImagePattern Image_Gradient = new ImagePattern(DemoImage, 80, 80, 160, 160, false);
// Set the linear gradient to the Square
Square.setFill(Image_Gradient);
// Create a Group object
Group Group_Root = new Group(Square, DemoText);
// Create a scene object
Scene DemoScene = new Scene(Group_Root, 600, 300);
// Set title to the Stage
DemoStage.setTitle("SetFill Example");
// Add scene to the stage
DemoStage.setScene(DemoScene);
// Display the contents of the stage
DemoStage.show();
}
public static void main(String args[]) {
launch(args);
}
}
Der obige Code füllt den Bildverlauf in die quadratische Form.
Ausgabe:
Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.
LinkedIn Facebook