您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > javafx菜单的创建
/***Copyright(c)2008,2012Oracleand/oritsaffiliates.*Allrightsreserved.Useissubjecttolicenseterms.*/importjavafx.application.Application;importjavafx.scene.Group;importjavafx.scene.Scene;importjavafx.stage.Stage;importjavafx.beans.InvalidationListener;importjavafx.beans.Observable;importjavafx.beans.value.ChangeListener;importjavafx.beans.value.ObservableValue;importjavafx.event.ActionEvent;importjavafx.event.EventHandler;importjavafx.geometry.Pos;importjavafx.scene.control.*;importjavafx.scene.image.Image;importjavafx.scene.image.ImageView;importjavafx.scene.input.KeyCombination;importjavafx.scene.layout.HBox;importjavafx.scene.layout.HBoxBuilder;importjavafx.scene.layout.VBox;/***Anexampleofamenubar.Theexampleincludesuseofthesystembar,ifthe*currentplatformsupportsasystembar.**@seejavafx.scene.control.MenuBar*@seejavafx.scene.control.Menu*@seejavafx.scene.control.MenuItem*@resourcemenuInfo.png*/publicclassMenuSampleextendsApplication{privatefinalLabelsysMenuLabel=newLabel(UsingSystemMenu);privatevoidinit(StageprimaryStage){Grouproot=newGroup();primaryStage.setScene(newScene(root));finalStringos=System.getProperty(os.name);VBoxvbox=newVBox(20);finalLabeloutputLabel=newLabel();finalMenuBarmenuBar=newMenuBar();//Options-Submenu2submenuMenuItemmenu121=MenuItemBuilder.create().text(Item1).build();MenuItemmenu122=MenuItemBuilder.create().text(Item2).build();Menumenu12=MenuBuilder.create().text(Submenu2).items(menu121,menu122).build();//Options-ChangeTextfinalStringchange[]={ChangeText,ChangeBack};finalMenuItemmenu13=MenuItemBuilder.create().text(change[0]).accelerator(KeyCombination.keyCombination(Shortcut+C)).build();menu13.setOnAction(newEventHandlerActionEvent(){publicvoidhandle(ActionEventt){menu13.setText((menu13.getText().equals(change[0]))?change[1]:change[0]);outputLabel.setText(((MenuItem)t.getTarget()).getText()+-actioncalled);}});//OptionsmenuMenumenu1=MenuBuilder.create().text(Options).items(menu12,menu13).build();menuBar.getMenus().addAll(menu1);if(os!=null&&os.startsWith(Mac)){MenusystemMenuBarMenu=newMenu(MenuBarOptions);finalCheckMenuItemuseSystemMenuBarCB=newCheckMenuItem(UseSystemMenuBar);useSystemMenuBarCB.setSelected(true);menuBar.useSystemMenuBarProperty().bind(useSystemMenuBarCB.selectedProperty());systemMenuBarMenu.getItems().add(useSystemMenuBarCB);menuBar.getMenus().add(systemMenuBarMenu);}vbox.getChildren().addAll(menuBar);if(os!=null&&os.startsWith(Mac)){HBoxhbox=HBoxBuilder.create().alignment(Pos.CENTER).build();sysMenuLabel.setStyle(-fx-font-size:24);hbox.getChildren().add(sysMenuLabel);vbox.getChildren().add(hbox);sysMenuLabel.setVisible((menuBar.getHeight()==0)?true:false);menuBar.heightProperty().addListener(newChangeListenerNumber(){publicvoidchanged(ObservableValue?extendsNumberov,Numbert,Numbert1){sysMenuLabel.setVisible((menuBar.getHeight()==0)?true:false);}});}root.getChildren().add(vbox);}@Overridepublicvoidstart(StageprimaryStage)throwsException{init(primaryStage);primaryStage.show();}publicstaticvoidmain(String[]args){launch(args);}}
本文标题:javafx菜单的创建
链接地址:https://www.777doc.com/doc-4587777 .html