JavaFX Shadow类

顾名思义,这种效果通过复制节点并使其边缘模糊来创建节点的阴影。名为javafx.scene.effect.Shadow的类表示阴影效果。我们只需要实例化这个类就可以生成合适的阴影效果。

1 Shadow类的属性

属性 描述 setter方法
blurType 这是一个模糊类型的属性。这表示用于模糊阴影的算法。 setBlurType(BlurType value)
color 这是颜色类型属性。它代表阴影颜色。 setColor(Color value)
height 它表示阴影模糊的垂直大小。 setHeight(double value)
input 它代表此效果的输入。 setInput(Effect value)
radius 它表示阴影的半径。 setRadius(double value)
width 它表示阴影模糊的水平大小。 setWidth(double value)

2 Shadow类的构造函数

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

  1. public Shadow() :使用默认参数创建一个新实例
  2. public Shadow(double radius, Color color) :创建一个具有指定半径和颜色的新实例。
  3. public Shadow(BlurType blurtype, Color color, double radius) :创建具有指定半径、颜色和模糊类型的新实例。

3  Shadow类的例子

package com.yiidian;

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.effect.BlurType;
import javafx.scene.effect.Shadow;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.paint.Color;
import javafx.stage.Stage;

public class ShadowExample extends Application {
  
    @Override  
    public void start(Stage primaryStage) throws Exception {
        Image img = new Image("http://www.yiidian.com/statics/images/logo.png");
        ImageView imgview = new ImageView(img);
        imgview.setFitHeight(100);
        imgview.setFitWidth(350);
        imgview.setX(100);
        imgview.setY(100);
        Shadow shadow = new Shadow();
        shadow.setBlurType(BlurType.GAUSSIAN);
        shadow.setColor(Color.BLACK);
        shadow.setHeight(30);  
        shadow.setRadius(12);  
        shadow.setWidth(20);  
        imgview.setEffect(shadow);  
        Group root = new Group();
        root.getChildren().add(imgview);  
        Scene scene = new Scene(root,600,350);
        primaryStage.setScene(scene);  
        primaryStage.setTitle("一点教程网:Shadow Effect Example");
        primaryStage.show();      
    }  
    public static void main(String[] args) {
        launch(args);
    }
  
}  

输出结果为:

热门文章

优秀文章