Въведение в менюто JavaFX

В менюто JavaFX менюто се използва като изскачащ прозорец, който се състои от много елементи от менюто, които се показват, когато потребителят щракне върху него. След това елементите от менюто преминават в скрито състояние. За да създадете това, инстанцирайте класа javafx.scene.control.Menu. Синтаксис, конструктори и няколко други аспекта на JavaFX Menu ще бъдат разгледани в следващите раздели.

Синтаксис:

В JavaFX менюто може да бъде създадено както по-долу.

Menu mn = new Menu();

Винаги се уверете, че клас javafx.scene.chart.Menu е импортиран в програмата, преди да изпълните кода.

Конструктори на JavaFX Menu

Има четири конструктора за менюто JavaFX. Те са:

  • Меню (): Ще се създаде празно меню.
  • Меню (String s): Ще се създаде меню със низ s като негов етикет.
  • Меню (String s, Node nd): Ще бъде създадено меню със низ s като негов етикет и nd като графичен възел.
  • Меню (String s, Node nd, Item … .. i): Ще бъде създадено меню със низ s като негов етикет и като графичен възел и добавете дадените елементи към списъка.

Методи на JavaFX Menu

Има някои методи на менюто на JavaFX, които са разгледани по-долу:

  • getItems (): Елементите, които ще се показват в това меню.
  • getOnHidden (): стойността на onHidden свойството ще бъде върната.
  • getOnShowing (): стойността на свойството onShowing ще бъде върната.
  • getOnHiding (): стойността на свойството на скриване ще бъде върната.
  • getOnShown (): стойността на свойството onShown ще бъде върната.
  • setOnHidden (EventHandler v): стойността на свойството onHidden v ще бъде зададена.
  • setOnHiding (EventHandler v): стойност на vHiding свойството v ще бъде зададена.
  • setOnShowing (EventHandler v): стойността на свойството onShowing ще бъде зададена.
  • setOnShown (EventHandler v): стойността на свойството onShown ще бъде зададена.
  • скриване (): Ако се показва контекстът или неговото подменю, този метод ще бъде извикан, за да го скрие.
  • isShowing (): Показва стойността на свойството ще бъде върната.
  • onHiddenProperty (): След като контекстът е скрит, този метод ще бъде извикан.
  • onShowingProperty (); Преди да се покаже контекстното меню, този метод ще бъде извикан, дори ако няма елементи за показване.
  • onHidingProperty (): Преди skriptaMenu да бъде скрит, този метод ще бъде извикан.
  • onShownProperty (): След като се покаже контекстаMenu, този метод ще бъде извикан.
  • addEventHandler (EventType et, EventHandler e): Обработващият събитие e ще бъде регистриран към елемента от менюто.
  • RemoveEventHandler (EventType et, EventHandler e): Обработващият събитие e, който е регистриран, ще бъде нерегистриран от елемента от менюто.
  • buildEventDispatchChain (EventDispatchChaint): Веригата за изпращане на събитие t ще бъде изградена за целта.
  • показProperty (): За да се провери дали контекстът е видим, този метод ще бъде извикан.

Как да създадете меню в JavaFX?

JavaFX Menu може да се създаде, като се използват следните стъпки.

Стъпка 1: Създайте клас, който се простира от клас на приложение.

Импортирайте пакета javafx.application.Application, за да разширите класа Application и да създадете клас, който го разширява.

public class JavaFXChartsExample extends Application (
)

Стъпка 2: Създайте менюто.

Както вече беше обсъдено, създайте меню, използвайки синтаксиса.

Menu m = new Menu();

Стъпка 3: Създайте елементи от менюто.

Създайте елементи от менюМени елементи, които трябва да бъдат добавени в менюто, което трябва да бъде създадено.

MenuItem mi1 = new MenuItem("Happy");

Стъпка 4: Създайте лента с менюта.

MenuBar mb = new MenuBar();

Стъпка 5: Добавете лентата с менюта.

Добавете създадената лента от менюта.

mb.getMenus().add(mn);

Стъпка 6: Конфигуриране на група и сцена.

След изпълнение на горните стъпки трябва да се конфигурират група и сцена.

VBox vb = new VBox(mb);
Scene sc = new Scene(vb, 400, 200);
s.setScene(sc);
s.show();

Примери за изпълнение на JavaFX Menu

Нека да видим някои различни JavaFX програми за реализиране на JavaFX Menu.

Пример №1

В този пример ще видим java програма с елементи от менюто за конструиране на меню.

Код:

//java program to create a menu with menu items
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.event.EventHandler;
import javafx.scene.control.*;
import javafx.stage.Stage;
import javafx.scene.control.Alert.AlertType;
import java.time.LocalDate;
import javafx.scene.control.Button;
import javafx.scene.layout.*;
import javafx.event.ActionEvent;
//sample class that extends application class
public class JavaFXMenuExample extends Application (
// application starts at this point
public void start(Stage s)
(
// Title for the stage
s.setTitle("Sample menu bar");
// menu creation
Menu mn = new Menu("Select your favourite online shopping site");
// menu items creation
MenuItem mi1 = new MenuItem("Flipkart");
MenuItem mi2 = new MenuItem("Myntra");
MenuItem mi3 = new MenuItem("Amazon");
MenuItem mi4 = new MenuItem("Club factory");
// Adding menu items
mn.getItems().add(mi1);
mn.getItems().add(mi2);
mn.getItems().add(mi3);
mn.getItems().add(mi4);
// menubar creation
MenuBar mb = new MenuBar();
// Adding Menubar
mb.getMenus().add(mn);
// VBox creation
VBox v = new VBox(mb);
// scene creation
Scene scn = new Scene(v, 500, 300);
// set the scene
s.setScene(scn);
//display the result
s.show();
)
public static void main(String args())
(
// launch the application
launch(args);
)
)

изход:

Ще се покаже меню, както е показано по-горе. Когато щракнете върху него, се показва списък с елементи.

Пример №2

Това е java програма за създаване на меню с елементи от менюто и неговите под-елементи.

Код:

//java program to create menu with menu items and its sub items
import javafx.application.Application;
import javafx.application.Platform;
import javafx.scene.Scene;
import javafx.scene.control.CheckMenuItem;
import javafx.scene.control.Menu;
import javafx.scene.control.MenuBar;
import javafx.scene.layout.BorderPane;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
import javafx.scene.control.MenuItem;
import javafx.scene.control.RadioMenuItem;
import javafx.scene.control.SeparatorMenuItem;
import javafx.scene.control.ToggleGroup;
public class JavaFXMenuExample extends Application (
@Override
public void start(Stage s) (
//create border pane
BorderPane r = new BorderPane();
Scene scene = new Scene(r, 300, 250, Color.RED);
//create menubar
MenuBar mb = new MenuBar();
mb.prefWidthProperty().bind(s.widthProperty());
r.setTop(mb);
// first menu with sub items
Menu m = new Menu("Select your Age group");
MenuItem mi1 = new MenuItem("18-24");
MenuItem mi2 = new MenuItem("25-35");
MenuItem mi3 = new MenuItem("36-50");
m.getItems().addAll(mi1, mi2, mi3);
// second menu with sub items
Menu m1 = new Menu("Favorite online site");
ToggleGroup t1 = new ToggleGroup();
RadioMenuItem r1 = new RadioMenuItem("Flipkart");
r1.setToggleGroup(t1);
RadioMenuItem r2 = new RadioMenuItem("Myntra");
r2.setToggleGroup(t1);
r2.setSelected(true);
m1.getItems().addAll(r1, r2);
Menu m2 = new Menu("Queries");
m2.getItems().addAll( new CheckMenuItem("Related to product"),
new CheckMenuItem("Related to delivery"));
m1.getItems().add(m2);
mb.getMenus().addAll(m, m1);
s.setScene(scene);
s.show();
)
public static void main(String() args) (
launch(args);
)
)

изход:

При изпълнение на кода ще се покажат две менюта с различни подпозиции. Когато щракнете върху второто меню, ще се покажат подпозиции като Flipkart, Myntra и Queries.

Може да се види, че в близост до Myntra има отметка, тъй като методът setSelected е зададен като True.

Когато щракнете върху менюто Заявки, се появяват два под-елемента като „Свързани с продукта“ и „Свързани с доставка“.

заключение

В JavaFX менюто се използва като изскачащ прозорец, който се показва, когато потребителят щракне върху него. Менюто се състои от елементи от менюто и неговите под-елементи. В този документ се обсъждат важни точки в менюто JavaFX.

Препоръчителни статии

Това е ръководство за менюто на JavaFX. Тук обсъждаме синтаксиса, конструкторите, методите и стъпките за създаване на JavaFX Menu заедно с примери и реализация на код. Можете също да разгледате следните статии, за да научите повече-

  1. Функция хеширане в Java
  2. Масиви в Java програмиране
  3. JLabel на Java
  4. Оформления на JavaFX
  5. Как функционира хеширането във php със синтаксис?
  6. Топ 15 методи на JavaFX VBox