package graphics.api.control.menu; import javafx.application.Application; import javafx.stage.Stage; import javafx.scene.Scene; import javafx.scene.control.MenuBar; import javafx.scene.control.Menu; import javafx.scene.control.MenuItem; import javafx.scene.control.CheckMenuItem; import javafx.collections.FXCollections; import javafx.collections.ObservableList; import javafx.scene.Group; public class CheckBoxMenuItemIssue extends Application { public static void main(String[] args) { CheckBoxMenuItemIssue.launch(args); } @Override public void start(Stage stage) throws Exception { float h = 400; float w = 400; Scene scene = new Scene(new Group(), w, h); Menu fileMenu; MenuBar menuBar = new MenuBar(); menuBar.setPrefWidth(scene.getWidth()); fileMenu = new Menu("File"); ObservableList menuitems = FXCollections.observableArrayList(); for (int i = 1; i <= 3; i++) { MenuItem menuitem = new MenuItem(); menuitem.setText("MenuItem-" + i); menuitems.add(menuitem); } fileMenu.getItems().clear(); fileMenu.getItems().addAll(menuitems); for (int i = 1; i <= 2; i++) { CheckMenuItem checkmenuitem = new CheckMenuItem(); checkmenuitem.setText("CheckBox " + i + " "); checkmenuitem.setSelected((i == 1) ? (true) : (false)); fileMenu.getItems().add(checkmenuitem); } menuBar.getMenus().clear(); menuBar.getMenus().addAll(fileMenu); ((Group) scene.getRoot()).getChildren().clear(); ((Group) scene.getRoot()).getChildren().addAll(menuBar); stage.setScene(scene); stage.setVisible(true); } }