java - 如何为 JavaFX 2 中未装饰的舞台提供高级窗口管理器设施?

标签 java javafx-2 custom-component window-managers

出于美观和可用性的原因,我的程序使用未修饰的Stage。 我已经实现了核心功能 - 最小化、最大化、关闭、调整大小和拖动都存在。

现在,我发现该程序缺少一些我认为给定的高级功能:
在 Windows XP 系统上,单击任务栏中的程序条目不再将其最小化。
在 KDE 系统上,拖动不允许 Stage 的任何部分离开屏幕。

每个功能都存在于各自的其他系统上;当舞台装饰完毕后,两者都可以在每个系统上运行。

我想知道是否可以在我的程序中以某种方式重新创建此行为,而无需恢复到装饰阶段。 Stage API 似乎没有提供任何有用的东西。

最佳答案

要使其发挥作用,一个技巧可能是创建一个装饰舞台作为未装饰舞台的父级。将已装饰的舞台放置在未装饰的舞台后面。像单击任务栏中的程序条目这样的功能应该可以工作(希望被黑的安排不会导致其他无法克服的问题)。您需要监听窗口的可见和隐藏状态并跟踪它们的大小,以便您可以正确维护顶部未装饰窗口和隐藏装饰窗口之间的关系。您可以在http://javafx-jira.kenai.com请求官方API,它更直接地提供您正在寻求的功能。

关于java - 如何为 JavaFX 2 中未装饰的舞台提供高级窗口管理器设施?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12245714/

相关文章:

java - Java 中的 Math.random()

java - 从 JavaFX 图表中删除轴

android - React native :Unable to resolve module Indeed, 这些文件都不存在:

java - 如何从自定义组件捕获事件

java - 多个 "screens"

java - 在初始化私有(private)静态变量时使用 getClass() 进行同步是不是一个坏主意?

java - getx 和 getminx 之间的区别

java - 如何返回 DataSnapshot 值作为方法的结果?

java - 如何在 UI 中编辑数据时警告用户,以便我可以警告他们覆盖或提示他们保存? ( java )

java - 当我滚动鼠标时,图形从我设置的表格中删除了文本字段和下拉列表。请帮助某人。提前致谢