我有一个JavaFX没有装饰的场景,其中包含用于鼠标事件的处理程序,例如Moved,Pressed和Dragged,以实现窗口大小调整和移动。窗口的根窗格是AnchorPane。
问题在于以下内容。当我将ScrollPane添加到根窗格时,我无法为用户提供窗口大小调整,因为滚动tad正在处理鼠标事件。我也无法通过使上部窗格鼠标可以遍历并尝试将鼠标事件从根窗格向上移动到上层来实现此功能。
您能帮忙找到解决此问题的方法吗?强烈要求使用未修饰的窗口并使用滚动窗格区域。
谢谢!
根窗格代码:
<AnchorPane fx:id="mainPanelRoot" prefHeight="700.0" prefWidth="1020.0"
xmlns:fx="http://javafx.com/fxml"
fx:controller="com.intellijustice.ui.controllers.IntelliJusticeController">
<children>
<AnchorPane fx:id="mainPanel" focusTraversable="true"
AnchorPane.bottomAnchor="32.0"
AnchorPane.leftAnchor="32.0"
AnchorPane.rightAnchor="32.0"
AnchorPane.topAnchor="32.0"
onKeyPressed="#anchorPaneKeyPressed"
onMouseMoved="#anchorPaneMouseMoved"
onMousePressed="#anchorPaneMousePressed"
onMouseDragged="#anchorPaneMouseDragged">
<children>
<ToolBar fx:id="toolBar"
AnchorPane.leftAnchor="0.0"
AnchorPane.rightAnchor="0.0"
AnchorPane.topAnchor="0.0"
prefHeight="70.0" minHeight="70.0" maxHeight="70.0"
onMouseClicked="#toolBarMouseClicked"
onMousePressed="#toolBarMousePressed"
onMouseDragged="#toolBarMouseDragged">
<ModuleBar fx:id="moduleBar">
<HBox.margin>
<Insets top="20.0" right="0.0" bottom="0.0" left="0.0"/>
</HBox.margin>
</ModuleBar>
</ToolBar>
<StackPane fx:id="moduleRegion"
AnchorPane.leftAnchor="0.0"
AnchorPane.rightAnchor="0.0"
AnchorPane.topAnchor="70.0"
AnchorPane.bottomAnchor="0.0" />
</children>
</AnchorPane>
</children>
</AnchorPane>
允许此根窗格添加任何&#39;模型&#39;窗格到moduleRegion。此模型是一个包含一些内容的窗格,滚动窗格在此问题中作为示例。如图所示,根窗格包含重写的鼠标处理程序,代码太大而无法包含在问题中。
滚动窗格只是一个带有滚动窗格的HBox窗格,没有任何鼠标处理程序。