java - 如何在 JavaFX 中禁用/隐藏工具提示

标签 java javafx tooltip hide

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

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")));            
}

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

感谢任何帮助!

最佳答案

用于控制

控件有一个 setter for tooltips .因此,对于控件,请使用它。

在控件上设置工具提示:

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

删除控件上的工具提示:

btnSettingsOk.setTooltip(null);    

对于非控件的节点

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

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

在非控件的节点上设置工具提示:

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

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

Tooltip.uninstall(btnSettingsOk, okTooltip); 

关于java - 如何在 JavaFX 中禁用/隐藏工具提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29154402/

相关文章:

java.lang.stackOverflow错误android

java - Android 可打包 : RuntimeException: Unmarshalling unknown type code

charts - JavaFx 饼图 : control size

asp.net - 仅向 GridView 的某些单元格添加工具提示

c# - 未链接到任何特定控件的工具提示

java - 我的应用程序跳过启动 Intent 并执行下一个代码行?

java - 当 SEDA 组件从文件组件消费时,消费的是什么?

JavaFX Webview 编码错误

java - 如何使用 scrollPane JavaFX 显示大于屏幕的图像

c# - 如何删除当前绑定(bind)到控件的工具提示?