import javafx.application.Application;
import javafx.event.EventHandler;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.control.ContextMenu;
import javafx.scene.control.Menu;
import javafx.scene.control.MenuBar;
import javafx.scene.control.MenuItem;
import javafx.scene.input.ContextMenuEvent;
import javafx.scene.layout.BorderPane;


public class Main extends Application {

@Override
public void start(Stage primaryStage) {
try {
BorderPane root = new BorderPane();
Scene scene = new Scene(root,400,400);

MenuBar menuBar = new MenuBar();
Menu menu = new Menu("Menu");
Menu nestedMenu = new Menu("Nested");
MenuItem nestedMenuItem = new MenuItem("Nested Menu Item");

nestedMenu.getItems().add(nestedMenuItem);
menu.getItems().add(nestedMenu);
menuBar.getMenus().add(menu);
root.setTop(menuBar);

ContextMenu contextMenu = new ContextMenu();
Menu nestedMenu2 = new Menu("Nested Menu 2");
MenuItem nestedMenuItem2 = new MenuItem("Nested Menu Item 2");

nestedMenu2.getItems().add(nestedMenuItem2);
contextMenu.getItems().add(nestedMenu2);

scene.setOnContextMenuRequested(new EventHandler<ContextMenuEvent>() {

@Override
public void handle(ContextMenuEvent event) {
contextMenu.show(root, event.getScreenX(), event.getScreenY());
}
});

primaryStage.setScene(scene);
primaryStage.show();

menu.getItems().forEach((i) -> {
System.out.println(i.getParentPopup());
System.out.println(((Menu) i).getItems().get(0).getParentPopup());
System.out.println(i.getParentPopup() == ((Menu) i).getItems().get(0).getParentPopup());
});

System.out.println(nestedMenu.getParentPopup());
System.out.println(nestedMenuItem.getParentPopup());
System.out.println(nestedMenu.getParentPopup() == nestedMenuItem.getParentPopup());

nestedMenu.getParentPopup().setStyle("-fx-background-color: green;");
nestedMenuItem.getParentPopup().setStyle("-fx-background-color: blue;");

nestedMenu2.getParentPopup().setStyle("-fx-background-color: green;");
nestedMenuItem2.getParentPopup().setStyle("-fx-background-color: blue;");

} catch(Exception e) {e.printStackTrace();}
}

public static void main(String[] args) {
launch(args);
}
}