【问题标题】:Java: Do Something when user stops resizing windowJava:当用户停止调整窗口大小时做某事
【发布时间】:2012-08-04 17:00:48
【问题描述】:

我目前正在使用可调整大小的 JavaFX 2.0 编写 gui。当用户调整窗口大小时,一个大矩形会随之调整大小。现在我需要将这个矩形的新边界推到一个漂浮在矩形内并且可能不会越界的图像上。

我曾想过通过 ChangeListener 更新边界,但我不希望它经常更新边界。完美的解决方案是“ChangeIsOverListener”,它会在更改结束时更新一次边界。

谁能帮帮我?

提前致谢! :)

【问题讨论】:

标签: java javafx-2 propertychangelistener


【解决方案1】:

您可能能够在窗口大小调整的任一侧捕获鼠标按下和鼠标向上事件 - 但您是否看到这些事件将取决于 AWT 系统,也可能取决于 O/S。

否则,您将不得不在窗口调整事件中使用计时器在最后一个窗口调整事件之后的几毫秒内触发一个单独的事件,这样如果没有更改,您就认为该大小已“完成”最后,比如说,每秒 1/2 秒。时间量将是用户感知的延迟和您想要处理的调整大小数量之间的折衷。

【讨论】:

  • 非常感谢!是否有可能在 ChangeEventHandler 中有一个 MouseUp-EventHandler?那也许可以解决问题! stackoverflow.com/questions/11377639/…(这是同一个方向 - 刚刚找到它!)
【解决方案2】:

也许你可以每隔x毫秒比较一次窗口的大小,当在这个时间间隔内没有变化时,你就知道变化结束了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-14
    • 1970-01-01
    • 2010-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多