有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java JavaFX8如何将“按下”状态传递给子级?

我在一个窗格中有一个ImageView,并且该窗格已设置了一个MouseEventHandler来执行一些操作

ImageView的图像在CSS文件中定义如下:

.imageView{
    -fx-image: url("image/normal.png");
}

.imageView:pressed{
    -fx-image: url("/image/press.png");
}

在正常状态下,ImageView的图像为“正常”。巴布亚新几内亚'。当用户按下ImageView时,其图像将更改为“按”。巴布亚新几内亚'。然后,当发布时,它的图像将变回“正常”。巴布亚新几内亚'

但是,如果用户没有准确按下ImageView的图像,即使触发了窗格的MouseEvent,图像也不会更改

当按下ImageView的父窗格时,如何更改其图像。例如,在Android上,图像将自动切换。非常方便


共 (1) 个答案

  1. # 1 楼答案

    在窗格中添加一个样式类(“例如,图像容器”),然后在css中添加样式类

    .imageView{
        -fx-image: url("image/normal.png");
    }
    
    .image-container:pressed .imageView {
        -fx-image: url("/image/press.png");
    }