任何人都可以就如何去除子菜单的白色边距提出建议(或者至少如何更改边距的颜色)? 我尝试过:
但似乎没有任何作用
该类如下:
public static void assembleMenuPane(VBox masterPane) {
ArrayList<String> list = new ArrayList<String>() {{
add("A");
add("B");
add("C");
}};
Menu menuOptions = new Menu("Options");
menuOptions.setStyle("-fx-font-size:12; -fx-background-color: #c9c9c9;");
Menu menuOptionsChild = new Menu("Opt_1");
menuOptionsChild.setStyle("-fx-border-color: yellow;" +
" -fx-background-color: red;" +
" -fx-indent: 0px;" +
" -fx-start-margin: 0px;" +
" -fx-end-margin: 0px;" +
" -fx-padding: 0px;");
menuOptions.getItems().add(menuOptionsChild);
list.forEach((children) -> menuOptionsChild.getItems().add(new MenuItem(children)));
MenuBar menuBar = new MenuBar();
menuBar.setStyle("-fx-background-color: #bf6dbf;");
menuBar.getMenus().addAll(menuOptions);
VBox menuBarPane = new VBox(menuBar);
masterPane.getChildren().add(menuBarPane);
}
,输出如下:
答案 0 :(得分:0)
这是指向场景构建器所用的CSS根文件的链接:modena.css
查看菜单,菜单栏和菜单项部分。如果我了解您想要的内容,以下两种样式将删除上下文菜单中的空白。
.context-menu {
-fx-padding: 0; }
.menu-item {
-fx-padding: 0; }
该特定菜单项中还有一个左右容器。左侧的容器中显示了文本,右侧的容器中显示了箭头。为了获得想要的效果,您需要确保将其应用于modena.css文件中的正确节点。