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类的构造函数
该类包含下面描述的两个构造函数。
- public Reflection() :使用默认参数创建一个新的 Reflection 实例
- 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);
}
}
输出结果为:
热门文章
优秀文章