如何 Disable/hide JavaFX 中的工具提示

How to Disable/hide Tooltips in JavaFX

这是我设置工具提示的方式:

if(Globals.isShowTooltips()) {
    locale = new Locale(Globals.getGuiLanguage());
    bundle = ResourceBundle.getBundle("bundles.lang", locale);            

    btnSettingsApply.setTooltip(
        new Tooltip(bundle.getString("btnSettingsApplyt")));

    btnSettingsOk.setTooltip(
        new Tooltip(bundle.getString("btnSettingsOkt")));

    btnSettingsCancel.setTooltip(
        new Tooltip(bundle.getString("btnSettingsCancelt")));            
}

如何隐藏工具提示?在我看来,对此没有直接的方法。

感谢任何帮助!

好的,刚刚找到了我自己的问题的答案:)

Tooltip.install(btnSettingsOk, new Tooltip(bundle.getString("btnSettingsOkt"))); //This is for showing

Tooltip.uninstall(btnSettingsOk, new Tooltip(bundle.getString("btnSettingsOkt"))); //This is for disabling

如果有更好的方法我想了解一下;)

对于控件

控件有一个 setter for tooltips。所以对于控件,请使用它。

要在控件上设置工具提示:

btnSettingsOk.setTooltip(new Tooltip("OK Button"));    

删除控件上的工具提示:

btnSettingsOk.setTooltip(null);    

对于非控件的节点

布局窗格、形状和其他节点没有 setter 工具提示(因为工具提示被归类为控件,JavaFX 开发人员希望避免一般场景图形节点对控件包的依赖) .但是,这些节点仍然可以使用静态 install and uninstall 方法处理工具提示。

这几乎是 Ikallas 的回答,尽管我只建议在所讨论的节点类型不提供显式 setTooltip 方法时使用它 - 尽管它也适用于控件。控件上的 set 方法使用起来更简单,因为控件存储了对工具提示的引用,而对于静态卸载,您的应用程序负责保留对工具提示的引用,以便以后可以将其删除。

要在不是控件的节点上设置工具提示:

Tooltip okTooltip = new Tooltip("OK Button");
Tooltip.install(btnSettingsOk, okTooltip))); 

要从不是控件的节点中删除工具提示:

Tooltip.uninstall(btnSettingsOk, okTooltip);