создание этапа без декорирования в javafx 2.0

Я пытаюсь создать собственный этап в javafx 2.0. Я хочу, чтобы моя сцена отбрасывала тень на экран, как ее отбрасывают другие окна ... Я пробовал использовать следующий код:

public class ChatWindow {
final private Stage stage = new Stage(StageStyle.UNDECORATED);
private Scene scene;
private Group rg;
private Text t = new Text();
private double initx = 0, inity = 0;

public ChatWindow() {

    rg = new Group();
    scene = new Scene(rg, 320, 240);
    //scene.setFill(null);
    scene.setFill(new Color(0, 0, 0, 0));
    stage.setScene(scene);
    stage.show();
    setupStage();
}

private void setupStage() {
    Rectangle r = new Rectangle(5, 5, stage.getWidth() - 10, stage.getHeight() - 10);
    r.setFill(Color.STEELBLUE);
    r.setEffect(new DropShadow());
    rg.setOnMousePressed(new EventHandler<MouseEvent>() {
        public void handle(MouseEvent me) {
            initx = me.getScreenX() - stage.getX();// - me.getSceneX(); 
            inity = me.getScreenY() - stage.getY();
        }
    });
    rg.setOnMouseDragged(new EventHandler<MouseEvent>() {

        public void handle(MouseEvent me) {
            stage.setX(me.getScreenX() - initx);
            stage.setY(me.getScreenY() - inity);
        }
    });
    rg.getChildren().add(r);
    rg.getChildren().add(t);
}

public void setVisible() {
    stage.show();
}
}

Я вижу, как тень падает, но на самом деле это белый фон, на который она падает. Так что это бесполезно, так как на цветном экране дефект будет виден, он будет выглядеть некрасиво ..

Это снимок экрана на белом экране: enter image description here

А это на цветном экране: enter image description here

Как решить эту проблему ?? Пожалуйста помоги.

7
задан batman 29 December 2011 в 15:32
поделиться