滚动条/滚动窗格消失在图片上传和放大的JavaFX

问题描述 投票:0回答:1

这是JavaFX应用程序。有嵌套在滚动窗格内的ImageView的和图像的加载/显示之前,滚动条是可见的。然而,当用户上传图像或点击/放大在图像上,则滚动条消失。这使得只有图像可见的部分。

我是一个非常新的开发人员,所以我可能使用了错误的方法来调整图像大小。我也可能会被调用了错误的对象上的方法(在这种情况下,ImageView的本身时,没有画上它的图像对象采取行动)。

下面是缩放方法我建:

// a method that allows user to zoom in and out on the image
    @FXML
    private void zoomImage(MouseEvent event) {
        if (imageDisplay != null) {
            if (imageDisplay.getScaleX() == 1.0 & imageDisplay.getScaleY() 
== 1.0) {
                imageDisplay.setScaleX(3.0);
                imageDisplay.setScaleY(3.0);
            } else {
                imageDisplay.setScaleX(1.0);
                imageDisplay.setScaleY(1.0);
            }
        } else {
            return;
        }
    }

(下面是ImageView的和滚动窗格,这两者都是在一个垂直框的FXML)

<ScrollPane>
    <content>
         <ImageView fx:id="imageDisplay" fitHeight="300.0" fitWidth="650.0" 
onDragDropped="#handleImageDrop" onDragOver="#handleImageDrag" 
onMouseClicked="#zoomImage" pickOnBounds="true" preserveRatio="true" />
    </content>
</ScrollPane>

我期望图像上传和放大后的滚动条仍然可见。

java javafx scenebuilder
1个回答
0
投票

您可以通过添加hbarPolicy="ALWAYS" vbarPolicy="ALWAYS">默认设置滚动条一如既往从FXML可见或不特定设置为AS_NEEDED这就是为什么他们可能不被显示出来

防爆。

<ScrollPane hbarPolicy="ALWAYS" vbarPolicy="ALWAYS">
    <content>
        <ImageView fx:id="imageDisplay" fitHeight="300.0" fitWidth="650.0"
                   onDragDropped="#handleImageDrop" onDragOver="#handleImageDrag"
                   onMouseClicked="#zoomImage" pickOnBounds="true" preserveRatio="true" />
    </content>
</ScrollPane>

另外,您可以与示例代码做

scrollPane.setVbarPolicy(ScrollPane.ScrollBarPolicy.ALWAYS);
© www.soinside.com 2019 - 2024. All rights reserved.