我有一个我无法解决的问题;将MousewheelListener添加到Node
。
当你用鼠标滚动时,我正试图制作一个Pane
大小改变的地方,但我在API中找不到任何名为“MouseWheelListener”的东西。
如何制作一个让Pane
对滚动做出反应的监听器?
答案 0 :(得分:2)
在JavaFX中滚动鼠标滚轮的事件称为ScrollEvent
。
您可以向节点添加EventHandler
。
node.addEventHandler(ScrollEvent.SCROLL, (ScrollEvent event) -> {
// Code for resizing the pane
});
在您向窗格添加onScroll
的fxml文件中:
<Pane fx:id="pane" onScroll="#nameOfMethodToBeOverridden">
...
</Pane>
(如果您使用的是SceneBuilder
,可以在Code
部分中完成)
在控制器中,您可以使用以下方式处理onScroll
:
@FXML
private Pane pane;
@FXML
private void nameOfMethodToBeOverridden(){
// Code for resizing the pane
}
答案 1 :(得分:0)
要在节点上侦听滚动事件,请使用
node.addEventHandler(ScrollEvent.SCROLL, (ScrollEvent event) -> {
// code to execute on scroll...
});