> Java > java지도 시간 > 본문

Java 13의 새로운 JavaFX 애니메이션 API를 사용하여 애니메이션 효과 달성

王林
풀어 주다: 2023-07-30 12:38:18
원래의
1640명이 탐색했습니다.

Java 13의 새로운 JavaFX 애니메이션 API를 사용하여 애니메이션 효과 달성

JavaFX는 풍부한 그래픽 라이브러리 및 사용자 인터페이스 구성 요소 세트를 제공하는 리치 클라이언트 애플리케이션을 구축하기 위한 크로스 플랫폼 프레임워크입니다. JavaFX의 애니메이션 API를 사용하면 다양한 애니메이션 효과를 쉽게 만들어 애플리케이션을 더욱 생생하고 매력적으로 만들 수 있습니다. 이 기사에서는 Java 13의 새로운 JavaFX 애니메이션 API를 소개하고 이를 사용하여 코드 예제를 통해 애니메이션 효과를 얻는 방법을 보여줍니다.

먼저 프로젝트에 JavaFX 라이브러리 종속성을 추가해야 합니다. Java 13 이상에서는 JavaFX가 JDK에서 분리되어 독립 라이브러리가 되었습니다. Maven이나 Gradle과 같은 빌드 도구를 통해 JavaFX 라이브러리를 소개할 수 있지만 여기서는 자세히 소개하지 않습니다.

이 기사에서는 창에서 움직이는 간단한 파란색 원의 애니메이션을 예로 들어 JavaFX 애니메이션 API를 사용하는 방법을 보여줍니다. 먼저 JavaFX 애플리케이션의 메인 클래스를 생성해야 합니다. 코드는 다음과 같습니다.

import javafx.animation.TranslateTransition;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
import javafx.scene.paint.Color;
import javafx.scene.shape.Circle;
import javafx.stage.Stage;
import javafx.util.Duration;

public class AnimationApp extends Application {

    @Override
    public void start(Stage primaryStage) {
        // 创建一个圆形对象
        Circle circle = new Circle(50, Color.BLUE);

        // 创建一个平移动画
        TranslateTransition translateTransition = new TranslateTransition(Duration.seconds(2), circle);

        // 设置平移动画的起始位置和结束位置
        translateTransition.setFromX(0);
        translateTransition.setToX(300);

        // 设置循环播放动画
        translateTransition.setCycleCount(TranslateTransition.INDEFINITE);
        translateTransition.setAutoReverse(true);

        // 创建一个布局容器
        StackPane root = new StackPane();
        root.getChildren().add(circle);

        // 创建一个场景
        Scene scene = new Scene(root, 400, 400);

        // 设置窗口标题和场景
        primaryStage.setTitle("Animation Demo");
        primaryStage.setScene(scene);

        // 显示窗口
        primaryStage.show();

        // 开始动画
        translateTransition.play();
    }

    public static void main(String[] args) {
        launch(args);
    }
}
로그인 후 복사

위 코드에서는 먼저 반경과 색상을 정의하는 원형 객체를 생성합니다. 다음으로 애니메이션을 시작하는 팬 애니메이션 TranslateTransition,和指定了动画的持续时间。通过设置起始位置和结束位置,我们可以实现圆形对象在窗口中的移动。通过设置setCycleCount方法可以让动画循环播放,并通过设置setAutoReverse方法让动画在每次播放结束后自动反向播放。接着,我们创建了一个布局容器StackPane,并添加了圆形对象作为其子节点。最后,我们创建了一个场景Scene,将布局容器作为其根节点,并设置了窗口的标题和场景。通过调用窗口的show方法来显示窗口,并通过调用动画的play 메서드를 만들었습니다.

위 코드는 단순한 예일 뿐이며 JavaFX의 애니메이션 API는 애니메이션 크기 조정, 회전 애니메이션, 투명도 애니메이션 등과 같은 다른 많은 기능도 제공합니다. 애니메이션의 다양한 속성과 매개변수를 설정하여 보다 복잡하고 정교한 애니메이션 효과를 얻을 수 있습니다.

요약하자면 이 문서에서는 Java 13의 새로운 JavaFX 애니메이션 API를 소개하고 이를 사용하여 간단한 코드 예제를 통해 애니메이션 효과를 얻는 방법을 보여줍니다. JavaFX의 애니메이션 API를 적절하게 활용함으로써 애플리케이션에 생생하고 매력적인 애니메이션 효과를 추가하여 사용자 경험을 향상시킬 수 있습니다. 독자들이 이를 활용하여 실제 개발의 관련 시나리오에 적용할 수 있기를 바랍니다.

위 내용은 Java 13의 새로운 JavaFX 애니메이션 API를 사용하여 애니메이션 효과 달성의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!