Tooltip — 为MenuItem实现Tooltip
一、Node组件可以很容易的添加Tooltip
在JavaFX2中,Tooltip可以很容易的实现在所有的Node组件中,如:
或者
可是有些特殊的组件并继承于Node,比如MenuItem。
二、有两种办法为MenuItem实现Tooltip
1. 使用CustomMenuItem类,它允许封装任意的Node作为显示内容,此时为具体的Node添加Tooltip即可。
- 这个方法会比较麻烦,需要先定义一个通用的CustomMenuItem菜单项,但是这样一来原本值需要为MenuItem定义的CSS现在要重新修改了
2. 响应MenuItem的激活和取消显示事件
- 在鼠标移到某个菜单项上面时,就会响应MenuValidation事件,此时显示Tooltip
- 在鼠标移到其他菜单项时,会触发其他菜单项的MenuValidation事件,Tooltip会刷新
- 在菜单消失时,会触发Hidden事件,此时隐藏Tooltip
见下面的代码:
三、一些相关的网址
http://stackoverflow.com/questions/13927559/menuitem-tooltip-in-javafx2
http://stackoverflow.com/questions/11647080/how-to-properly-size-and-wrap-tooltips