【问题标题】:How to set event on stage while mouse dragging?鼠标拖动时如何在舞台上设置事件?
【发布时间】:2014-06-09 14:56:52
【问题描述】:

我想在拖动舞台时触发一个事件。我发现了很多关于未装饰舞台拖动的示例,这些示例在窗格上设置了事件(MouseEvent)但不在舞台上。有什么办法可以解决这个问题吗?

【问题讨论】:

    标签: java javafx stage


    【解决方案1】:

    仅观察舞台的 x 和 y 属性是否有效?

    即:

    final Stage stage ;
    // ...
    
    ChangeListener<Number> stageMoveListener = new ChangeListener<Number>() {
        @Override
        public void changed(ObservableValue<? extends Number> ov, Number oldValue, Number new Value) {
            System.out.println("Stage moved to "+stage.getX()+", "+stage.getY());
        }
    });
    stage.xProperty().addListener(stageMoveListener);
    stage.yProperty().addListener(stageMoveListener);
    

    【讨论】:

    • 谢谢先生!它对我有帮助。
    猜你喜欢
    • 2013-11-17
    • 2023-01-19
    • 2015-12-05
    • 2012-01-26
    • 1970-01-01
    • 2013-12-04
    • 1970-01-01
    • 1970-01-01
    • 2012-05-13
    相关资源
    最近更新 更多