有可能有一个带有装饰(最小化、最大化、关闭)的透明JavaFX窗口吗

有可能有一个带有装饰(最小化、最大化、关闭)的透明JavaFX窗口吗,java,centos,javafx-8,transparency,stage,Java,Centos,Javafx 8,Transparency,Stage,我知道在JavaFX中,要使窗口透明,需要将stage样式设置为stage.initStyle(StageStyle.transparent)。然而,这也将删除任何舞台装饰,所以这并不能解决我的问题 我之所以需要它,是因为我的应用程序需要使用stage.setAlwaysOnTop()在某些点,但此功能在目标系统(centOS)上不受很好的支持。应用程序还需要stage.setIconnified(),但如果舞台未装饰,则此操作不起作用 如有任何建议,将不胜感激。 谢谢简短的回答是“不,你不能”

我知道在JavaFX中,要使窗口透明,需要将stage样式设置为
stage.initStyle(StageStyle.transparent)。然而,这也将删除任何舞台装饰,所以这并不能解决我的问题

我之所以需要它,是因为我的应用程序需要使用
stage.setAlwaysOnTop()在某些点,但此功能在目标系统(centOS)上不受很好的支持。应用程序还需要
stage.setIconnified(),但如果舞台未装饰,则此操作不起作用

如有任何建议,将不胜感激。 谢谢

简短的回答是“不,你不能”。。。因为最小化/最大化/关闭按钮是装饰的一部分。没有装饰-没有按钮。这本身就是一个矛盾

如果需要这些按钮的功能,则必须创建自己的按钮作为UI的一部分,并模拟装饰按钮的行为。这就是许多没有默认装饰的应用程序所做的

无论如何,如果您想以这种方式操纵窗口行为(保持在顶部/图标化等),您始终需要考虑底层操作系统。只要操作系统窗口系统允许,任何应用程序(不仅仅是Java应用程序)都只允许干扰窗口管理。 例如,在各种MS Windows版本中,操作系统的行为在这一点上改变了好几次