Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package application;
- import java.awt.color.ICC_ColorSpace;import java.io.DataOutput;
- import java.util.Date;
- import java.util.Observable;
- import javafx.application.Application;
- import javafx.collections.FXCollections;
- import javafx.collections.ObservableList;
- import javafx.stage.Stage;
- import javafx.scene.Scene;
- import javafx.geometry.Pos;
- import javafx.geometry.Orientation;
- //----------------------------
- import javafx.scene.control.MenuBar;
- import javafx.scene.control.Menu;
- import javafx.scene.control.MenuItem;
- import javafx.scene.control.RadioMenuItem;
- import javafx.scene.control.CheckMenuItem;
- import javafx.scene.control.SeparatorMenuItem;
- //----------------------------
- import javafx.scene.control.ToolBar;
- import javafx.scene.control.Button;
- import javafx.scene.control.Label;
- import javafx.scene.control.TextField;
- import javafx.scene.control.CheckBox;
- import javafx.scene.control.RadioButton;
- import javafx.scene.control.ToggleButton;
- import javafx.scene.control.Separator;
- import javafx.scene.control.PasswordField;
- import javafx.scene.control.DatePicker;
- import javafx.scene.control.ColorPicker;
- import javafx.scene.control.ComboBox;
- import javafx.scene.control.Hyperlink;
- import javafx.scene.control.Slider;
- import javafx.scene.control.Spinner;
- import javafx.scene.control.SpinnerValueFactory;
- import javafx.scene.control.ScrollBar;
- import javafx.scene.control.ProgressBar;
- import javafx.scene.control.ProgressIndicator;
- //----------------------------
- import javafx.scene.control.SplitPane;
- import javafx.scene.control.TextArea;
- import javafx.scene.web.HTMLEditor;
- import javafx.scene.control.Accordion;
- import javafx.scene.control.TitledPane;
- import javafx.scene.paint.Color;
- import javafx.scene.shape.Rectangle;
- import javafx.scene.text.Text;
- //----------------------------
- import javafx.scene.control.ToggleGroup;
- //----------------------------
- import javafx.scene.layout.BorderPane;
- import javafx.scene.layout.FlowPane;
- import javafx.scene.layout.GridPane;
- import javafx.scene.layout.HBox;
- import javafx.scene.layout.VBox;
- //----------------------------
- import javafx.scene.control.TabPane;
- import javafx.scene.control.Tab;
- import javafx.geometry.Side;
- public class Main extends Application
- {
- private BorderPane root;
- private Scene scene;
- private MenuBar menuBar;
- private ToolBar toolBar;
- private VBox controlBars;
- private HBox statusBar;
- private HBox enterFields;
- private TabPane tabPane;
- private Tab tab_1;
- private Tab tab_2;
- private Tab tab_3;
- private Tab tab_4;
- private Tab tab_5;
- private Tab tab_6;
- private Tab tab_7;
- private Tab tab_8;
- private Tab tab_9;
- private Tab tab_10;
- private Accordion accordPane;
- @Override
- public void start(Stage stage)
- {
- createControlBars();
- createStatusBar();
- createEnterBox();
- createTabs();
- createAccordPane();
- setupStage(stage);
- }
- public static void main(String[] args)
- {
- launch(args);
- }
- //=================================
- public void createControlBars()
- {
- createMenuBar();
- createToolBar();
- controlBars = new VBox();
- controlBars.getChildren().add(menuBar);
- controlBars.getChildren().add(toolBar);
- }
- public void createMenuBar()
- {
- //--- Menu Bar
- menuBar = new MenuBar();
- //--- File Menu
- Menu fileMenu = new Menu("File");
- MenuItem newMenuItem = new MenuItem("New...");
- MenuItem openMenuItem = new MenuItem("Open...");
- MenuItem saveMenuItem = new MenuItem("Save...");
- MenuItem exitMenuItem = new MenuItem("Exit");
- saveMenuItem.setDisable(true);
- fileMenu.getItems().add(newMenuItem);
- fileMenu.getItems().addAll
- (
- openMenuItem,
- saveMenuItem,
- new SeparatorMenuItem(),
- exitMenuItem
- );
- //--- Options Menu
- Menu optionsMenu = new Menu("Options");
- CheckMenuItem chk_item_1 = new CheckMenuItem("First");
- CheckMenuItem chk_item_2 = new CheckMenuItem("Second");
- CheckMenuItem chk_item_3 = new CheckMenuItem("Third");
- optionsMenu.getItems().addAll(chk_item_1, chk_item_2, chk_item_3);
- //--- Toggle Menu
- Menu settingsMenu = new Menu("Settings");
- ToggleGroup tGroup1 = new ToggleGroup();
- RadioMenuItem rd_item_1 = new RadioMenuItem("Red");
- RadioMenuItem rd_item_2 = new RadioMenuItem("Green");
- RadioMenuItem rd_item_3 = new RadioMenuItem("Blue");
- rd_item_1.setToggleGroup(tGroup1);
- rd_item_2.setToggleGroup(tGroup1);
- rd_item_3.setToggleGroup(tGroup1);
- rd_item_3.setSelected(true);
- ToggleGroup tGroup2 = new ToggleGroup();
- RadioMenuItem rd_item_4 = new RadioMenuItem("Hello");
- RadioMenuItem rd_item_5 = new RadioMenuItem("Hi");
- RadioMenuItem rd_item_6 = new RadioMenuItem("Welcome");
- rd_item_4.setToggleGroup(tGroup2);
- rd_item_5.setToggleGroup(tGroup2);
- rd_item_6.setToggleGroup(tGroup2);
- rd_item_4.setSelected(true);
- settingsMenu.getItems().addAll(rd_item_1, rd_item_2, rd_item_3);
- settingsMenu.getItems().add(new SeparatorMenuItem());
- settingsMenu.getItems().addAll(rd_item_4, rd_item_5, rd_item_6);
- //-------------------------------
- menuBar.getMenus().add(fileMenu);
- menuBar.getMenus().add(optionsMenu);
- menuBar.getMenus().add(settingsMenu);
- }
- public void createToolBar()
- {
- toolBar = new ToolBar();
- Button btn_open = new Button("Open");
- toolBar.getItems().add(btn_open);
- toolBar.getItems().add(new Button("Edit"));
- toolBar.getItems().add(new Button("Close"));
- }
- public void createStatusBar()
- {
- statusBar = new HBox();
- Label statusText = new Label("Ready");
- statusBar.getChildren().add(statusText);
- Date currentDate = new Date();
- Label dateText = new Label();
- dateText.setText(currentDate.toString());
- statusBar.getChildren().add(dateText);
- }
- public void createEnterBox()
- {
- enterFields = new HBox();
- enterFields.setSpacing(20); //tarpai tarp elementu
- Label enterLabel = new Label("Label :");
- TextField enterText = new TextField();
- Button enterButton = new Button("Set");
- enterFields.getChildren().addAll(enterLabel, enterText, enterButton);
- }
- public VBox createCheckBoxPane(javafx.geometry.Pos position, double spacing)
- {
- VBox checkBoxPane = new VBox();
- {
- checkBoxPane.setAlignment(position);
- checkBoxPane.setSpacing(spacing);
- CheckBox cb_1 = new CheckBox("Simple checkbox");
- CheckBox cb_2 = new CheckBox("Three-state checkbox");
- cb_2.setAllowIndeterminate(true);
- cb_2.setIndeterminate(true);
- CheckBox cb_3 = new CheckBox("Disabled");
- cb_3.setSelected(true);
- cb_3.setDisable(true);
- CheckBox cb_4 = new CheckBox ();
- cb_4.setText("New one");
- checkBoxPane.getChildren().addAll(cb_1, cb_2, cb_3, cb_4);
- }
- return checkBoxPane;
- }
- public VBox createRadioBtnPane(javafx.geometry.Pos position, double spacing)
- {
- VBox radioBtnPane = new VBox();
- {
- radioBtnPane.setAlignment(position);
- radioBtnPane.setSpacing(spacing);
- ToggleGroup tg_rb_box = new ToggleGroup();
- {
- RadioButton rb_1 = new RadioButton("Hello");
- rb_1.setToggleGroup(tg_rb_box);
- RadioButton rb_2 = new RadioButton("Bye");
- rb_2.setToggleGroup(tg_rb_box);
- rb_2.setSelected(true);
- RadioButton rb_3 = new RadioButton("Hidden");
- rb_3.setToggleGroup(tg_rb_box);
- rb_3.setVisible(false); //paslepti elementa
- RadioButton rb_4 = new RadioButton("Disabled");
- rb_4.setToggleGroup(tg_rb_box);
- rb_4.setDisable(true);
- radioBtnPane.getChildren().addAll(rb_1, rb_2, rb_3, rb_4);
- }
- }
- return radioBtnPane;
- }
- public HBox createToggleBtnPane(javafx.geometry.Pos position, double spacing)
- {
- HBox toggleBtnPane = new HBox();
- {
- toggleBtnPane.setSpacing(spacing);
- toggleBtnPane.setAlignment(position);
- ToggleGroup tg_bnt_grp = new ToggleGroup();
- {
- ToggleButton tb_1 = new ToggleButton("Windows");
- tb_1.setToggleGroup(tg_bnt_grp);
- ToggleButton tb_2 = new ToggleButton("VxWorks");
- tb_2.setDisable(true); //setVisibale gali buti
- tb_2.setToggleGroup(tg_bnt_grp);
- ToggleButton tb_3 = new ToggleButton("QIX");
- tb_3.setToggleGroup(tg_bnt_grp);
- ToggleButton tb_4 = new ToggleButton("Xenix");
- tb_4.setToggleGroup(tg_bnt_grp);
- ToggleButton tb_5 = new ToggleButton("Linux");
- tb_5.setToggleGroup(tg_bnt_grp);
- ToggleButton tb_6 = new ToggleButton("Mac OS");
- tb_6.setToggleGroup(tg_bnt_grp);
- toggleBtnPane.getChildren().addAll(tb_1, tb_2, tb_3, tb_4, tb_5, tb_6);
- }
- }
- return toggleBtnPane;
- }
- public VBox createSpecCtrlPane(javafx.geometry.Pos position, double spacing)
- {
- VBox specCtrlPane = new VBox();
- {
- specCtrlPane.setSpacing(spacing);
- specCtrlPane.setAlignment(position);
- PasswordField password = new PasswordField();
- password.setMaxWidth(200);
- specCtrlPane.getChildren().add(password);
- specCtrlPane.getChildren().add(new Separator());
- DatePicker datePicker = new DatePicker();
- specCtrlPane.getChildren().add(datePicker);
- specCtrlPane.getChildren().add(new Separator());
- ColorPicker colorPicker = new ColorPicker();
- specCtrlPane.getChildren().add(colorPicker);
- specCtrlPane.getChildren().add(new Separator());
- Hyperlink hyperlink = new Hyperlink("Go to the link...");
- specCtrlPane.getChildren().add(hyperlink);
- specCtrlPane.getChildren().add(new Separator());
- Slider slider = new Slider();
- slider.setMaxWidth(200);
- specCtrlPane.getChildren().add(slider);
- specCtrlPane.getChildren().add(new Separator());
- ScrollBar scrollBar = new ScrollBar();
- //scrollBar.setMaxWidth(300);
- scrollBar.setOrientation(Orientation.VERTICAL);
- specCtrlPane.getChildren().add(scrollBar);
- ProgressBar progressBar = new ProgressBar();
- progressBar.setMaxWidth(200);
- specCtrlPane.getChildren().add(progressBar);
- specCtrlPane.getChildren().add(new Separator());
- ProgressIndicator progressIndicator = new ProgressIndicator();
- specCtrlPane.getChildren().add(progressIndicator);
- }
- return specCtrlPane;
- }
- public SplitPane createEditorsPane(javafx.geometry.Pos position, double spacing)
- {
- SplitPane editorsPane = new SplitPane();
- {
- editorsPane.setOrientation(Orientation.VERTICAL);
- TextArea textArea = new TextArea();
- HTMLEditor htmlEditor = new HTMLEditor();
- editorsPane.setDividerPosition(0,5);
- editorsPane.getItems().addAll(textArea, htmlEditor);
- }
- return editorsPane;
- }
- public void createAccordPane()
- {
- accordPane = new Accordion();
- {
- TitledPane tpan_1 = new TitledPane("Button Node", new Button("Button"));
- TitledPane tpan_2 = new TitledPane("Script Node", new Text("Button"));
- TitledPane tpan_3 = new TitledPane("Rect Node", new Rectangle(120, 50, Color.CORAL));
- accordPane.getPanes().addAll(tpan_1, tpan_2, tpan_3);
- }
- //---------Check Boxes ----------------
- TitledPane tpan_4 = new TitledPane("VBox(Check Box) Node", createCheckBoxPane(Pos.TOP_LEFT, 10));
- accordPane.getPanes().add(tpan_4);
- //------------Radio Buttons------------
- TitledPane tpan_5 = new TitledPane("VBox(Radio Btn) Node", createRadioBtnPane(Pos.TOP_LEFT, 10));
- accordPane.getPanes().add(tpan_5);
- //------------
- //accordPane.setMinSize(10, 10);;//visos funkcijos kaip ir visur(visable, disable ir t.t.)
- }
- public VBox createComplexCtrlPane(javafx.geometry.Pos position, double spacing) {
- VBox comboCtrlPane = new VBox();
- {
- comboCtrlPane.setSpacing(spacing);
- comboCtrlPane.setAlignment(position);
- HBox comboBoxes = new HBox();
- {
- comboBoxes.setSpacing(spacing);
- ComboBox<String> ch_1 = new ComboBox<String>();
- ch_1.getItems().addAll("Dog", "Cat", "Horse", "Cow");
- ComboBox<Integer> ch_2 = new ComboBox<Integer>();
- ch_2.getItems().addAll(1, 2, 3, 4, 5, 6);
- ComboBox<Boolean> ch_3 = new ComboBox<Boolean>();
- ch_3.getItems().addAll(true,false,true, true,false);
- comboBoxes.getChildren().addAll(ch_1, ch_2, ch_3);
- }
- comboCtrlPane.getChildren().add(comboBoxes);
- comboCtrlPane.getChildren().add(new Separator());
- HBox spinners = new HBox();
- {
- spinners.setSpacing(spacing);
- //------ Value Factories ---
- SpinnerValueFactory<Integer> svf_int = new SpinnerValueFactory.IntegerSpinnerValueFactory(1, 99);
- SpinnerValueFactory<Double> svf_double = new SpinnerValueFactory.DoubleSpinnerValueFactory(0.0, 1.0,0.5,0.01);
- ObservableList<String> cities = FXCollections.observableArrayList("London" , "Paris" , "Berlin", "Warsaw","Vilnius" );
- SpinnerValueFactory<String> svf_str = new SpinnerValueFactory.ListSpinnerValueFactory<String>(cities);
- //== Spinners --
- Spinner<String> sp_1 = new Spinner<>();
- sp_1.setValueFactory(svf_str);
- Spinner<Integer> sp_2 = new Spinner<>();
- sp_2.setValueFactory(svf_int);
- sp_2.getStyleClass().add(Spinner.STYLE_CLASS_ARROWS_ON_RIGHT_HORIZONTAL);
- Spinner<String> sp_3 = new Spinner<>();
- sp_3.setValueFactory(svf_str);
- sp_3.getStyleClass().add(Spinner.STYLE_CLASS_SPLIT_ARROWS_HORIZONTAL);
- Spinner<Double> sp_4 = new Spinner<>();
- sp_4.setValueFactory(svf_double);
- sp_4.getStyleClass().add(Spinner.STYLE_CLASS_ARROWS_ON_LEFT_VERTICAL);
- spinners.getChildren().addAll(sp_1,sp_2,sp_3,sp_4);
- comboBoxes.getChildren().add(spinners);
- }
- }
- return comboCtrlPane;
- }
- //------- Flow / Grid layouts ----------
- public SplitPane createLayoutsPane(javafx.geometry.Pos position, double spacing) {
- SplitPane layoutsPane = new SplitPane();
- {
- layoutsPane.setOrientation(Orientation.HORIZONTAL);
- layoutsPane.setDividerPositions(0.5);
- layoutsPane.getItems().addAll(createFlowPane(), createGridPane());
- }
- return layoutsPane;
- }
- // ===== FLow Pane====
- public FlowPane createFlowPane() {
- FlowPane flow = new FlowPane(Orientation.HORIZONTAL);
- {
- flow.setVgap(4);
- flow.setHgap(4);
- flow.setPrefWrapLength(210);
- Button btn = new Button();
- for(int i=0;i<10;i++) {
- btn = new Button("Button "+ i);
- btn.setPrefSize(100, 50);
- flow.getChildren().add(btn);
- }
- TextArea area = new TextArea();
- for(int i=0;i<10;i++) {
- area = new TextArea("Text "+ i);
- area.setPrefSize(100, 50);
- flow.getChildren().add(area);
- }
- }
- return flow;
- }
- //==== Grid Pane ======
- public GridPane createGridPane() {
- GridPane grid = new GridPane();
- {
- }
- return grid;
- }
- public void setupStage(Stage stage)
- {
- stage.setTitle("The Main Window");
- stage.setMinHeight(100);
- //stage.setMaxHeight(600);
- stage.setMinWidth(100);
- //stage.setMaxWidth(1000);
- //--------------------------
- root = new BorderPane();
- scene = new Scene(root,600,500);
- root.setTop(controlBars);
- root.setBottom(statusBar);
- root.setCenter(tabPane);
- root.setRight(accordPane);
- //--------------------------
- stage.setScene(scene);
- stage.show();
- }
- public void createTabs()
- {
- tabPane = new TabPane();
- tabPane.setSide(Side.TOP);
- tab_1 = new Tab();
- tab_1.setText("Standart");
- tab_1.setContent(enterFields);
- tab_2 = new Tab("Check Boxes");
- tab_2.setContent(createCheckBoxPane(Pos.TOP_CENTER, 10)); //nustato vieta lange
- tab_3 = new Tab("Radio Buttons");
- tab_3.setContent(createRadioBtnPane(Pos.CENTER_LEFT, 10));
- tab_4 = new Tab("Toggle Buttons");
- tab_4.setContent(createToggleBtnPane(Pos.CENTER, 0));
- tab_5 = new Tab("Special Controls");
- tab_5.setContent(createSpecCtrlPane(Pos.TOP_LEFT, 10));
- tab_6 = new Tab("Complex Controls");
- tab_6.setContent(createComplexCtrlPane(Pos.TOP_CENTER, 12));
- tab_7 = new Tab("Editors");
- tab_7.setContent(createEditorsPane(Pos.TOP_RIGHT, 10));
- tab_8 = new Tab("Flow/Grid Layouts");
- tab_8.setContent(createLayoutsPane(Pos.TOP_LEFT,10));
- tab_9 = new Tab("Scroll Pane");
- tabPane.getTabs().addAll(tab_1, tab_2, tab_3, tab_4, tab_5, tab_6, tab_7, tab_8, tab_9);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement