JavaFX工具提示

时间:2020-01-09 10:36:43  来源:igfitidea点击:

当用户将鼠标悬停在JavaFX控件上时,JavaFX Tooltip类(javafx.scene.control.Tooltip)会显示带有说明文字的小弹出窗口。 "工具提示"是现代桌面和Web GUI的众所周知的函数。工具提示可用于在GUI空间中没有足够的可用空间来始终显示说明性文本的GUI中提供额外的帮助文本,例如在按钮文本中。

创建工具提示实例

要使用JavaFXTooltip类,我们必须创建一个Tooltip实例。这是创建JavaFXTooltip实例的示例:

Tooltip tooltip1 = new Tooltip("Creates a new file");

作为参数传递给"工具提示"构造函数的文本是当"工具提示"可见时显示的文本。

向JavaFX组件添加工具提示

创建Tooltip实例后,需要将其添加到JavaFX组件中以使其处于活动状态。这是向JavaFX Button添加Tooltip实例的示例:

Tooltip tooltip1 = new Tooltip("Creates a new file");

Button button1 = new Button("New");
button1.setTooltip(tooltip1);

注意对Button的setTooltip()方法的调用。当鼠标悬停在按钮上时,这将导致"工具提示"实例可见。

这是一个截图,显示了生成的"工具提示"的外观:

文字对齐

我们可以通过"工具提示"框中的" setTextAlignment()"方法设置文本的文本对齐方式。这是设置"工具提示"的文本对齐方式的示例:

tooltip1.setTextAlignment(TextAlignment.LEFT);

javafx.scene.text.TextAlignment包含四个不同的常量,它们代表不同种类的文本对齐方式。四个常数是:

  • 正确
  • CENTER
  • 公正

前三个常量表示弹出框中文本的左对齐,右对齐和居中对齐。最后一个常量" JUSTIFY"将通过增加单词之间的间隔使文本与弹出框的左边缘和右边缘对齐,以使文本合适。

请注意,设置文本对齐方式可能不会对文本对齐方式产生可见的影响。这是因为默认情况下,基于文本的宽度计算文本周围的弹出框的宽度。如果文本只是一行,则文本几乎总是在弹出框中居中显示。当弹出框包含多行文本时,或者我们明确(手动)设置"工具提示"的宽度时,文本对齐才真正生效。

工具提示图形

我们可以通过setGraphic()方法为"工具提示"设置图形图标。这是为"工具提示"设置图形图标的示例:

tooltip1.setGraphic(new ImageView("file:iconmonstr-basketball-1-16.png"));