如何在JavaFX2上下文菜单中限制菜单项的宽度

如何在JavaFX2上下文菜单中限制菜单项的宽度,java,javafx-2,contextmenu,menuitem,Java,Javafx 2,Contextmenu,Menuitem,如何限制ContextMenu的最大宽度或强制MenuItem内容的文本换行?MenuItem上没有此类属性,在ContextMenu上设置pref/max/min width似乎不起作用 ContextMenu contextMenu = new ContextMenu(); contextMenu.setPrefWidth(200.0); contextMenu.setMinWidth(PopupControl.USE_PREF_SIZE); contextM

如何限制ContextMenu的最大宽度或强制MenuItem内容的文本换行?MenuItem上没有此类属性,在ContextMenu上设置pref/max/min width似乎不起作用

    ContextMenu contextMenu = new ContextMenu();
    contextMenu.setPrefWidth(200.0);
    contextMenu.setMinWidth(PopupControl.USE_PREF_SIZE);
    contextMenu.setMaxWidth(PopupControl.USE_PREF_SIZE);
    contextMenu.getItems().add(new MenuItem("Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua"));
MenuItem有一个默认的内部标记组件,用于显示通过MenuItem.setText设置的文本,而且您似乎很难通过CSS id选择器使用Node.lookup来访问标记的文本并对其进行操作。幸运的是,另一种方法更容易,我想一点也不疼。另一种方法是使用MenuItem.setGraphic:

MenuItem有一个默认的内部标记组件,用于显示通过MenuItem.setText设置的文本,而且您似乎很难通过CSS id选择器使用Node.lookup来访问标记的文本并对其进行操作。幸运的是,另一种方法更容易,我想一点也不疼。另一种方法是使用MenuItem.setGraphic:


您可以使用以下方法设置ContextMenu的CSS样式:

    ContextMenu menu = new ContextMenu();
    menu.setStyle("-fx-max-width: your-width-value;");

您可以使用以下方法设置ContextMenu的CSS样式:

    ContextMenu menu = new ContextMenu();
    menu.setStyle("-fx-max-width: your-width-value;");