Como posso estilizar um menu JavaFX e seus itens em CSS?
Eu tenho um MenuBar que é configurado da seguinte maneira no FXML:
<MenuBar VBox.vgrow="NEVER">
<menus>
<Menu mnemonicParsing="true" text="_File">
<items>
<MenuItem mnemonicParsing="true" text="_New Project"/>
<MenuItem mnemonicParsing="true" text="_Open…"/>
<MenuItem mnemonicParsing="false" text="Quit"/>
</items>
</Menu>
</menus>
</MenuBar>
Isso produz um menu da seguinte maneira:
Eu denominei com sucesso oMenuBar
e aMenu
Arquivo com o seguinte CSS:
.menu-bar { /* The menu bar itself */ }
.menu { /* The File menu item */ }
.menu:showing { /* menu when it's being shown (activated) */ }
.menu .label { /* Styles the text on a menu item */ }
.menu:showing .label { /* Styles the text on a menu item when activated */ }
No entanto, não consegui estilizar o menu exibido.
Eu tentei tratá-lo como um ContextMenu:
.context-menu {
-fx-background-color: red;
}
Não faz nada (não é um ContextMenu, então não há grande surpresa aqui).
Eu tentei estilizarmenu-item
emenu-button
:
.menu-button,
.menu-item {
-fx-background-color: red;
}
Isso muda o menu (Arquivo), mas não os itens de menu ou o menu exibido.
Eu tentei selecionar umsubestrutura chamado.items
mas isso não parece existir.
Para ajudar a esclarecer quais elementos estou procurando estilizar, adicionei esta imagem que descreve os componentes que desejo estilizar: