JavaFX에서 투명한 장면 만들기

MD Aminul Islam 2024년2월15일
  1. JavaFX에서 투명한 장면 만들기
  2. JavaFX에서 투명 스테이지를 만드는 다른 방법
JavaFX에서 투명한 장면 만들기

때때로 애플리케이션 시작 시 완전히 투명한 프리로더 화면이 표시됩니다. 또한 기본 닫기, 최소화 또는 최대화 옵션이 포함된 프리로더 화면의 제목 표시줄을 볼 수 없습니다.

이 기사에서는 애플리케이션에서 이 장면을 만드는 방법을 보여줍니다. 또한 이 주제를 더 쉽게 이해할 수 있도록 적절한 설명이 포함된 예를 볼 수 있습니다.

JavaFX에서 투명한 장면 만들기

아래 예제에서는 완전히 보이지 않는 장면을 만들 것입니다. 장면의 내용 만 볼 수 있습니다.

예제 코드는 아래와 같습니다.

// Importing necessary packages.

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.layout.VBox;
import javafx.scene.text.Font;
import javafx.scene.text.Text;
import javafx.stage.Stage;
import javafx.stage.StageStyle;

public class FXTransparent extends Application {
  public void start(Stage PrimaryStage) {
    PrimaryStage.initStyle(
        StageStyle.TRANSPARENT); // Set the initial style to the stage to transparent
    Text txt = new Text("I'm totally \n transparent..."); // Creating a text element.
    txt.setFont(new Font(30)); // Set the font size to 30 for the text.
    VBox vbox = new VBox(); // Create a Vbox
    vbox.getChildren().add(txt); // Add the text to the Vbox
    Scene scene = new Scene(vbox, 400, 250); // Create a scene with Vbox and dimension
    scene.setFill(null); // Set the scene to no fill
    PrimaryStage.setScene(scene); // Add the scene to stage
    PrimaryStage.show(); // Visualize the stage
  }

  public static void main(String[] args) {
    launch(args); // Launch the application
  }
}

우리는 이미 코드의 각 줄의 목적을 명령했습니다. 이제 코드의 중요한 부분에 대해 설명합니다.

PrimaryStage.initStyle(StageStyle.TRANSPARENT); 라인을 통해 스테이지 스타일을 투명으로 설정합니다. 이렇게 하면 전체 무대가 투명해집니다.

이를 위해 initStyle() 메서드를 사용했습니다. 위의 예제 코드를 컴파일하고 환경에서 실행하면 아래 출력이 표시됩니다.

JavaFX 투명 배경 출력

JavaFX에서 투명 스테이지를 만드는 다른 방법

JavaFX는 지원 CSS와 함께 FXML을 사용하여 UI를 생성합니다. Oracle에서 공식적으로 제공하는 Scene Builder를 사용하여 UI를 쉽게 구축하거나 수정할 수 있습니다.

이 도구를 통해 마우스 클릭만으로 UI에 CSS 속성을 쉽게 추가하고 UI에 다른 많은 스타일을 추가할 수 있습니다. 또는 외부 CSS 파일을 만들어 아래와 같이 코드에 포함할 수 있습니다.

scene.getStylesheets().add("YourCSS.css")

IDE가 라이브러리 및 패키지의 자동 포함을 지원하지 않는 경우 기억하십시오. 그런 다음 컴파일하기 전에 이러한 필수 라이브러리 및 패키지를 수동으로 포함해야 할 수 있습니다.

MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn

관련 문장 - Java JavaFX