JavaFX Reflection类

一般来说,反射可以定义为方向的变化。JavaFX 允许我们在任何节点上生成反射效果。反射效果基本上是将节点的反射添加到其底部。它由类javafx.scene.effect.Reflection表示。我们只需要实例化这个类以便将适当的效果应用到节点。

1 Reflection类的属性

属性 描述 setter方法
bottomOpacity 它是一个双重类型的属性。它代表底部极端反射的不透明度。 setBottomOpacity(double value)
fraction 它是一个双重类型的属性。它表示要在反射中显示的输入部分。 setFraction(double value)
input 它是一个对象类型属性。它代表效果的输入。 setInput(Effect value)
topOffset 它是一个双重类型的属性。它表示反射顶部和底部之间的距离。 setTopOffset(Double value)
topOpacity 它表示输入顶部反射的不透明度。 setTopOpacity(Double value)

2 Reflection类的构造函数

该类包含下面描述的两个构造函数。

  1. public Reflection() :使用默认参数创建一个新的 Reflection 实例
  2. public Reflection(double topOffset, double fraction, double topOpacity, double bottomOpacity) :使用指定的参数创建一个新的 Reflection 实例

3  Reflection类的例子

package com.yiidian;

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.effect.Reflection;
import javafx.scene.text.Font;
import javafx.scene.text.FontPosture;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;
import javafx.stage.Stage;

public class ReflectionExample extends Application {  
  
    @Override  
    public void start(Stage primaryStage) throws Exception {  
        Text text = new Text();  
        text.setFont(Font.font("calibri", FontWeight.BLACK, FontPosture.REGULAR,20));  
        text.setText("欢迎访问一点教程网");  
        text.setX(90);  
        text.setY(90);  
        Reflection ref = new Reflection();  
        ref.setBottomOpacity(0.2);  
        ref.setFraction(12);  
        ref.setTopOffset(10);  
        ref.setTopOpacity(0.2);  
        text.setEffect(ref);  
        Group root = new Group();  
        Scene scene = new Scene(root,400,300);  
        root.getChildren().add(text);  
        primaryStage.setScene(scene);  
        primaryStage.setTitle("一点教程网:Reflection Example");  
        primaryStage.show();  
    }  
    public static void main(String[] args) {  
        launch(args);  
    }  
}  

输出结果为:

热门文章

优秀文章