Adam Bien's Weblog

Transparent Windows (Stage) With Java FX 2

To make the main Java FX window completely transparent, you only have to set the StageStyle.TRANSPARENT and the Scene#setFill(null):


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 TransparentStage extends Application {

    @Override
    public void start(Stage stage) {
        stage.initStyle(StageStyle.TRANSPARENT);
        Text text = new Text("Transparent!");
        text.setFont(new Font(40));
        VBox box = new VBox();
        box.getChildren().add(text);
        final Scene scene = new Scene(box,300, 250);
        scene.setFill(null);
        stage.setScene(scene);
        stage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}

Checkout the TransparentStage sample (source code).


NEW dates, new workshop: Java EE 7 Workshops: Bootstrap, Effective, Architectures, JavaScript Bootstrap and HTML 5 December, 7th-11th
Online workshop: Java EE 7 Bootstrap

Newsletter: airhacksnews.com

A book about rethinking Java EE Patterns

Comments:

this post was very useful.
I didnt find anything in Oracles Doc about how to make a transparent stage..

thanks you!

Posted by Americo Hernandez on December 19, 2012 at 08:41 PM CET #

thanks :)

Posted by Sahil on June 07, 2014 at 12:11 AM CEST #

Thanks, very usefull.

Posted by faez jana on February 12, 2015 at 08:24 AM CET #

Hello Adam,

thanks for your contribution to the community. Can you tell me if there is a way to use the TRANSPARENT mode and have a decorated window with the exit buttons and the possibility to move the window.

Many Thanks

Tommy

Posted by Tommy Ziegler on July 01, 2015 at 11:22 PM CEST #

Post a Comment:
  • HTML Syntax: NOT allowed
realworldpatterns.com
...the last 150 posts
...the last 10 comments
License