【问题标题】:JavaFx resizableJavaFx 可调整大小
【发布时间】:2016-02-29 21:13:30
【问题描述】:

我正在制作一个需要最大化且不可调整大小的 javafx 应用程序。 (我必须看到窗口下的任务栏,但我已经修复了)。 但是当我设置这个时:

spelStage.setResizable(false);
Rectangle2D primaryScreenBounds = Screen.getPrimary().getVisualBounds();
spelStage.setX(primaryScreenBounds.getMinX());
spelStage.setY(primaryScreenBounds.getMinY());
spelStage.setWidth(primaryScreenBounds.getWidth());
spelStage.setHeight(primaryScreenBounds.getHeight());

它显示了我想要的方式(因为 setMaximize(true) 任务栏消失了)。但是当你在标题栏上拖动时,它仍然会调整窗口的大小,尽管我说 resizable false...

关于如何使窗口根本无法调整大小的任何提示?

提前致谢!

【问题讨论】:

  • 请看屏幕,我无法清楚地想象会发生什么以及应该发生什么。
  • 是的,对不起.. 使用上面的代码:imgur.com/jbsJjG4;使用 setMaximize(true)(没有 Rectangle -> getheight)imgur.com/6DqGlGB 并且当我在最大化时双击标题栏时:imgur.com/FZRGaFU。我清除了窗口的内容,因为它与学校有关。谢谢。

标签: java javafx


【解决方案1】:

如果您只需要使窗口不可调整大小,则可以将舞台上的resizeable 属性设置为false

spelStage.setResizable(false);

请注意,窗口仍然可以通过拖动标题栏来移动。

如果您另外将窗口样式设置为UNDECORATED,这个问题可能会消失:

spelStage.initStyle(StageStyle.UNDECORATED);

【讨论】:

  • 我相信按 Alt+space 可以调整未装饰舞台的大小。
  • @VGR 不在带有 Java 1.8.0_45 的 Windows 7 上,但我会编辑答案 - 我不知道它如何在其他系统上工作 - 感谢您指出:)
  • 我刚刚检查过,你说得对。对于未装饰的舞台,似乎确实禁用了调整大小。
  • 我将此标记为已用答案,我认为没有其他方法可以使用未装饰的窗口。谢谢大家。
  • @RockTheStar 你能提供一个不能以这种方式工作的示例代码吗?
猜你喜欢
  • 2014-10-31
  • 2023-03-29
  • 1970-01-01
  • 2014-06-20
  • 1970-01-01
  • 2016-01-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多