最小化javafx2中的窗口

时间:2012-12-13 06:32:13

标签: javafx-2 javafx

我在javafx2中取消了窗口的设计。现在我想通过动作最小化窗口。这是我的代码

    minIcon.setOnMouseClicked(new EventHandler<MouseEvent>() {
        public void handle(MouseEvent me) {
            primaryStage.toBack();
        }
    });

当另一个窗口打开时,窗口会返回。否则不是。请告诉我如何做到这一点?

2 个答案:

答案 0 :(得分:33)

经过一段时间的搜索,我找到了答案。

minIcon.setOnMouseClicked(new EventHandler<MouseEvent>() {
    public void handle(MouseEvent me) {
        primaryStage.setIconified(true);
    }
});

这很好..

答案 1 :(得分:0)

以下代码应该起作用:

iconid.setOnMouseClicked( event -> {
  Stage obj = (Stage) iconid.getScene().getWindow();
  obj.setIconified(true);
});

编辑:我是这里的新手,所以我不知道如何更好地展示我的代码。所以我会努力的。

以下是expln:- 可变含义- iconid:ImageView元素的fxid。 obj:您可以声明的随机阶段对象。

event ->{}是一个lambda函数,它减少了我的工作,所以我经常使用它。

第二行所做的是创建一个新的舞台对象,并将其等同于所显示的当前舞台,该对象使用.getScene().getWindow()属性进行检索。我使用了相同的ImageView元素来保持一致性,但是您可以使用属于同一阶段的任何元素(例如,来自同一窗口的按钮)

第三行是您调用方法setIconified(boolean)的地方[不是最好的命名ik,但我认为这与将其“图标化”到任务栏有关-将其从窗口转换为图标有关)为“ true”将最小化您指定的窗口。 就是这样。