【发布时间】:2015-08-06 07:23:51
【问题描述】:
我想从上下文菜单中显示颜色选择器:
ColorPicker colorssPicker = new ColorPicker();
final MenuItem resizeItem = new MenuItem("Option 1");
resizeItem.setOnAction(new EventHandler<ActionEvent>()
{
@Override
public void handle(ActionEvent event)
{
}
});
final MenuItem resizesItem = new MenuItem();
resizesItem.setGraphic(colorssPicker);
resizesItem.setOnAction(new EventHandler<ActionEvent>()
{
@Override
public void handle(ActionEvent event)
{
}
});
final ContextMenu menu = new ContextMenu();
menu.getItems().addAll(resizeItem, resizesItem);
sc.setOnMouseClicked(new EventHandler<MouseEvent>()
{
@Override
public void handle(MouseEvent event)
{
if (MouseButton.SECONDARY.equals(event.getButton()))
{
menu.show(primaryStage, event.getScreenX(), event.getScreenY());
}
}
});
此代码不起作用,当我单击上下文菜单“选择颜色”时,我看不到颜色选择器。实现这一点的正确方法是什么?
我得到这个结果:
【问题讨论】:
-
在哪里添加
colorssPicker到菜单中?检查此answer,以及此行:editLabel.setGraphic(picker); -
我更新了代码,但最终结果并不好。我能以某种方式解决这个问题吗?
-
你期待什么结果?
-
我能不能让它看起来像这样docs.oracle.com/javafx/2/ui_controls/img/color-picker-css2.png 并将它放在文本的位置进入上下文菜单?
-
所以要去掉按钮样式,去掉菜单项的文字?