javafx关闭窗口

时间:2011-02-05 05:01:23

标签: user-interface javafx

我有一个javafx应用程序,我能够生成另一个窗口,但我似乎无法找到一种方法来关闭我开始的窗口。 我用它来加载第二个窗口

var design = Launcher {};

                javafx.stage.Stage
                {
                    title: "Launcher"
                    scene: design.getDesignScene ()
                }

2 个答案:

答案 0 :(得分:2)

stage.close(),但你需要一个引用原始阶段的变量。

答案 1 :(得分:0)

它对我有用的方式:

  1. 我有Main.fx,我想先看看我想看的窗口。 例如:

    var mainWind:MainWindow = MainWindow {};

  2. MainWindow.fx将扩展CustomNode并覆盖create()方法。 在create()方法中,我有舞台 例如:

    公共类MainWindow扩展了CustomNode {

    ...

    var stage:Stage;

    覆盖函数create():节点{

    var n:Node;
    stage = Stage {
        width: 300
        height: 180
        title: "Login"
        scene: Scene {
            content:[ userText, userTextBox, passwdText, passwdTextBox, btnsBox ]
        }
    }
    return n;
    

    } }

  3. 在MainWindow.fx中,我有一个按钮,其中包含一个事件,我关闭此阶段并显示另一个阶段。 例如:

    按钮{

        text: "Login"
        font:Font{ name:"Arial" size: 12}
        layoutInfo:LayoutInfo {
            width: loginbtn_width
        }
        blocksMouse: false
       //close main window
        onMouseClicked: function(e:MouseEvent):Void { stage.close(); }
       //open the other window
        action: function(){
           // the ConnectionSettings will also extend CustomNode and will have its own stage
            var conSetWind:ConnectionSettings = ConnectionSettings{ };
        }
    

    }

  4. 尤利亚