如何删除 JFX 中的舞台按钮

How can I remove stage buttons in JFX

我尝试了很多方法来删除我的 JFX 项目框架中的舞台按钮。我正在使用装饰器来更新设计。

我只想删除最大化、调整大小和最小化按钮。不应删除关闭按钮。你能给我一个提示,我该如何处理这个问题?

JFXDecorator decorator = new JFXDecorator(primaryStage, gridContainer);

我试过用这种方式删除可调整大小的按钮:

primaryStage.setResizable(false);

.jfx-decorator{
    -fx-decorator-color: #2196F3;
    -fx-text-fill: black;
    -fx-background-color: transparent;
    -fx-border-color: #2196F3;
}

.jfx-decorator .jfx-decorator-buttons-container{
    -fx-background-color: -fx-decorator-color;
}

.jfx-decorator .resize-border{
    -fx-border-color: #2196F3;
    -fx-border-width: 0 4 4 4;
}
.jfx-decorator .jfx-decorator-buttons{
    -fx-background-color: red;
}

其实很简单。 如果您查看装饰器的构造函数:

public JFXDecorator(Stage stage, Node node) { this(stage, node, true, true, true); }

您可以将三个布尔值设置为false,这超出了您想要的解决方案。

您必须传递准确数量的参数。 布尔值是...

1 个全屏

2 Maximize/Restore

3 最小化

JFXDecorator decorator = new JFXDecorator(mainStage, root, false, false, false);