【问题标题】:How to get the value of imageview in tilepane, JavaFX?java - 如何在tilepane,JavaFX中获取imageview的值?
【发布时间】:2015-01-30 16:51:32
【问题描述】:

我在 JavaFX 中制作了一个瓷砖。我在瓷砖上放了一些图像视图。

tilepane => 图像视图 => 图像

我想在 tilepane(第一行,第一列)的 imageview 中获取图像的值。

这个值

| 0,0 | 0,1 | 0,2 | 0,3 | 0,4 |

| 1,0 | 1,1 | 1,2 | 1,3 | 1,4 |

我试过

System.out.println(tilepane.getChildren().get(0))

=> 结果:Pane@2fc42278

我可以访问 tilepane(第一行,第一列)。 但我无法获得内在价值。我的最终目标是获得图像的名称。 如何获取图像的价值?

提前致谢!

【问题讨论】:

    标签: javafx


    【解决方案1】:

    节点有一个方法setUserData,您可以在其中放入任何对象。您可以通过 setUserData 方法为 ImageView 对象指定名称。

    遍历 TitledPane 将是这样的:

        TitledPane pane = ...
        for( Node child: pane.getChildrenUnmodifiable()) {
            if( child instanceof ImageView) {
                ImageView imageView = (ImageView) child;
                System.out.println( imageView.getUserData());
            }
        }
    

    这样你检查 ImageView。但是当然你也可以不检查 ImageView 而检查所有节点的 userData。

    【讨论】:

    • 哦!这是很不错的。非常感谢!我可以得到图片网址!我很抱歉。我想要投票,但我缺乏声誉。 ## System.out.println(imageView.getImage().impl_getUrl()); ##
    • 不要使用它。 impl_... 方法被标记为在以后的版本中被删除。除非有其他选择,否则我建议您将 url 作为 UserData 放入节点中。
    • 好的!我会尝试!周末愉快!
    猜你喜欢
    • 1970-01-01
    • 2014-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多