java - 关于Node 的 MousewheelListener

标签 java javafx mouseevent

我有一个无法解决的问题;将 MousewheelListener 添加到 Node

我正在尝试创建一个 Pane,当您使用鼠标滚动时,其大小会发生变化,但我在 API 中找不到任何名为“MouseWheelListener”的内容。

如何让监听器使 Pane 对滚动使用react?

最佳答案

JavaFX中滚动鼠标滚轮的事件称为ScrollEvent .

您可以向节点添加 EventHandler

node.addEventHandler(ScrollEvent.SCROLL, (ScrollEvent event) -> {
    // Code for resizing the pane
});

或者(使用 FXML)

在将 onScroll 添加到 Pane 的 fxml 文件内部:

<Pane fx:id="pane" onScroll="#nameOfMethodToBeOverridden">
  ...
</Pane>

(如果您使用SceneBuilder,这可以在Code部分完成)

Controller 中,您可以使用以下方法处理onScroll:

@FXML
private Pane pane;

@FXML
private void nameOfMethodToBeOverridden(){
     // Code for resizing the pane
}

关于java - 关于Node 的 MousewheelListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27566017/

相关文章:

java - 从 map 中获取值(value)

Javafx 在 Canvas 上拖放形状

java - 是否有类相互调用的解决方法?

JavaFX 文本字段格式设置

C++ SDL2 立即获取鼠标坐标

java - Eclipse STS Gradle 错误 - java.lang.NoClassDefFoundError : org/springframework/boot/SpringApplication

java - 根据另一个列表中的条件删除一个列表中的某些元素

javascript - iOS Safari : 'click' event not triggerd when there is an event-listener on 'mousemove'

java - 在使用自签名证书签名的服务器上调用 API

java - 暂停监听鼠标/按键事件,直到声音结束