我正在编写一个JavaFX程序作为学习练习。我正在尝试将CustomMenuItem
与CheckBox
子Node
添加到Menu
(我想利用CustomMenuItem.setHideOnClick()
)。在运行时,菜单填充复选框正常...但文本是不可见/未渲染,直到鼠标悬停。没有其他节点类型这样做。这是一些示例代码,我的程序遵循:
example.fxml
<AnchorPane xmlns="http://javafx.com/javafx/2.2" fx:controller="ExampleController">
<MenuBar AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<Menu ext="Menu" fx:id="menu">
<items>
<CustomMenuItem hideOnClick="false">
<content>
<CheckBox text="Click Me" />
</content>
</CustomMenuItem>
</items>
</Menu>
</MenuBar>
</AnchorPane>
我还尝试通过控制器将CustomMenuItem添加到菜单中:
menu.getItems().add(new CustomMenuItem(new CheckBox("Click Me")));
具有相同的结果 - “Click Me”仅出现在鼠标悬停的复选框旁边。我无法找到任何其他具有相同问题的帖子,而且我没有在javadocs中找到任何可能指向正在发生的事情的相关类的内容。
我很难过:(
答案 0 :(得分:0)
我遇到了同样的问题。设置textFill
是我的解决方案:
<CheckBox text="Click Me" textFill="#000000"/>