JavaFx 文本工具提示鼠标悬停没有得到任何响应
JavaFx Text Tooltip mouseover doesn't get any response
我在 JavaFx 中的文本元素上设置了工具提示,只要我不将鼠标悬停在文本上,一切都会正常,工具提示不会显示。
<Text layoutX="329.0" layoutY="202.0" strokeType="OUTSIDE" strokeWidth="0.0" text="Tcond[C]" textAlignment="CENTER">
<Tooltip text="'%Empty_Bundle'"/>
</Text>
这是应该在该文本上创建工具提示的 fxml 代码。
如何在不为我的视图控制器中的对象创建分配文本并使用 .setTooltp() 方法在工具提示上进行设置的情况下修复它?
在 FXML 中,如果您将一个实例元素直接嵌入到另一个实例元素中,而没有 属性 元素,它用于将 属性 注释设置为外部实例上的 @DefaultProperty
元素。
如果您检查 documentation for Text
,您会看到默认的 属性 是 "text"
:所以您的 FXML 等同于
<Text layoutX="329.0" layoutY="202.0" strokeType="OUTSIDE" strokeWidth="0.0" text="Tcond[C]" textAlignment="CENTER">
<text>
<Tooltip text="'%Empty_Bundle'"/>
</text>
</Text>
换句话说,您正在尝试将 Text
对象的文本设置为工具提示。
Text
实际上根本没有 setTooltip(...)
方法;该方法在 Control
class 中定义,其中 Text
不是子 class。在 Text
实例上设置工具提示的唯一方法是使用 Tooltip.installTooltip(...)
method,您只能从控制器调用它(没有 FXML 等效于调用此静态方法)。
你的另一个选择,如果可行的话,是将 Text
替换为 Label
:
<Label layoutX="329.0" layoutY="202.0" text="Tcond[C]" textAlignment="CENTER">
<tooltip>
<Tooltip text="'%Empty_Bundle'"/>
</tooltip>
</Label>
请注意,Label
不允许您像 Text
那样直接配置 stroke
,因此您将失去该功能(或者至少必须使用 CSS 代替)。
我在 JavaFx 中的文本元素上设置了工具提示,只要我不将鼠标悬停在文本上,一切都会正常,工具提示不会显示。
<Text layoutX="329.0" layoutY="202.0" strokeType="OUTSIDE" strokeWidth="0.0" text="Tcond[C]" textAlignment="CENTER">
<Tooltip text="'%Empty_Bundle'"/>
</Text>
这是应该在该文本上创建工具提示的 fxml 代码。
如何在不为我的视图控制器中的对象创建分配文本并使用 .setTooltp() 方法在工具提示上进行设置的情况下修复它?
在 FXML 中,如果您将一个实例元素直接嵌入到另一个实例元素中,而没有 属性 元素,它用于将 属性 注释设置为外部实例上的 @DefaultProperty
元素。
如果您检查 documentation for Text
,您会看到默认的 属性 是 "text"
:所以您的 FXML 等同于
<Text layoutX="329.0" layoutY="202.0" strokeType="OUTSIDE" strokeWidth="0.0" text="Tcond[C]" textAlignment="CENTER">
<text>
<Tooltip text="'%Empty_Bundle'"/>
</text>
</Text>
换句话说,您正在尝试将 Text
对象的文本设置为工具提示。
Text
实际上根本没有 setTooltip(...)
方法;该方法在 Control
class 中定义,其中 Text
不是子 class。在 Text
实例上设置工具提示的唯一方法是使用 Tooltip.installTooltip(...)
method,您只能从控制器调用它(没有 FXML 等效于调用此静态方法)。
你的另一个选择,如果可行的话,是将 Text
替换为 Label
:
<Label layoutX="329.0" layoutY="202.0" text="Tcond[C]" textAlignment="CENTER">
<tooltip>
<Tooltip text="'%Empty_Bundle'"/>
</tooltip>
</Label>
请注意,Label
不允许您像 Text
那样直接配置 stroke
,因此您将失去该功能(或者至少必须使用 CSS 代替)。