Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaFx:如何在ImageView上安装工具提示_Java_Imageview_Javafx_Tooltip - Fatal编程技术网

JavaFx:如何在ImageView上安装工具提示

JavaFx:如何在ImageView上安装工具提示,java,imageview,javafx,tooltip,Java,Imageview,Javafx,Tooltip,我试过这个: public void addTargetCard(MissionCard mCard) { int card = mCard.GetID(); leftSide.getChildren().removeAll(targetCardBox); Image image = new Image( MainApp.class.getResourceAsStream("images/target" + card

我试过这个:

public void addTargetCard(MissionCard mCard) {
    int card = mCard.GetID();
    leftSide.getChildren().removeAll(targetCardBox);
    Image image = new Image(
            MainApp.class.getResourceAsStream("images/target" + card
                    + ".png"));
    ImageView imageView = new ImageView();
    imageView.setImage(image);
    imageView.setFitHeight(81);
    imageView.setFitWidth(108);
    imageView.setPreserveRatio(true);
    imageView.setPickOnBounds(true);
    Tooltip.install(imageView, new Tooltip(intToCity(mCard.getStart())
            + " - " + intToCity(mCard.getFinish())));
    targetCardBox.getChildren().add(imageView);
    leftSide.getChildren().add(targetCardBox);
}
有人能解释一下为什么我的工具提示不起作用吗?我不知道我做错了什么。(这是我第一次使用工具提示)


其他人告诉我ImageView不能与工具提示一起工作,并给了我这个解决方法——但当我将鼠标移到标签上时,我再次没有工具提示

    public void addTargetCard(MissionCard mCard) {
    int card = mCard.GetID();
    leftSide.getChildren().removeAll(targetCardBox);
    Image image = new Image(
            MainApp.class.getResourceAsStream("images/target" + card
                    + ".png"));
    ImageView imageView = new ImageView();
    imageView.setImage(image);
    imageView.setFitHeight(81);
    imageView.setFitWidth(108);
    imageView.setPreserveRatio(true);
    imageView.setPickOnBounds(true);
    Label label = new Label();
    label.setContentDisplay(ContentDisplay.GRAPHIC_ONLY);
    label.setGraphic(imageView);
    label.setTooltip(new Tooltip(intToCity(mCard.getStart()) + " - "
            + intToCity(mCard.getFinish())));
    targetCardBox.getChildren().add(label);
    leftSide.getChildren().add(targetCardBox);
}

正在将工具提示安装到图像视图中。使用新的示例JavaFX项目试试看。当您怀疑所用API的某些功能时(本例中为JavaFX),请尝试将怀疑的用例隔离到新的环境/项目中,并仔细观察它


还有,为什么要从左侧卸下targetCardBox,然后再添加它。

hmm k,我删除了targetCardBox,再次添加它,因为有一个更新功能,可以随时更新内容。您的p.s.是最好的提示^^-因为我总是更新targetcards,所以在两次更新之间没有足够的时间显示工具提示-谢谢您的帮助^^我认为这不正确。ImageView不是具有tooltip属性的控件,它是一个节点。tooltip.install(ImageView,string)在ImageView节点上有效。您是否尝试过在label和ImageView上使用工具提示的简单示例?请表现出一些努力。你有没有任何可能导致工具提示不出现的css样式?我尝试了一个简单的例子,我只是不知道为什么我在这个例子中没有工具提示