Introduction au menu JavaFX

Dans le menu JavaFX, le menu est utilisé comme une fenêtre contextuelle composée de nombreux éléments de menu qui s'affichent lorsque l'utilisateur clique dessus. Après cela, les éléments de menu passent dans un état masqué. Afin de créer ceci, instanciez la classe javafx.scene.control.Menu. La syntaxe, les constructeurs et plusieurs autres aspects du menu JavaFX seront abordés dans les sections suivantes.

Syntaxe:

Dans JavaFX, le menu peut être créé comme ci-dessous.

Menu mn = new Menu();

Assurez-vous toujours que la classe javafx.scene.chart.Menu est importée dans le programme avant d'exécuter le code.

Constructeurs de JavaFX Menu

Il existe quatre constructeurs pour le menu JavaFX. Elles sont:

  • Menu (): Un menu vide sera créé.
  • Menu (String s): Un menu sera créé avec la chaîne s comme étiquette.
  • Menu (String s, Node nd): Un menu sera créé avec la chaîne s comme étiquette et nd comme nœud graphique.
  • Menu (String s, Node nd, Item… .. i): Un menu sera créé avec la chaîne s comme étiquette, et comme nœud graphique et ajoutera les éléments donnés à la liste.

Méthodes du menu JavaFX

Certaines méthodes de menu JavaFX sont décrites ci-dessous:

  • getItems (): éléments à afficher dans ce menu.
  • getOnHidden (): la valeur de la propriété onHidden sera retournée.
  • getOnShowing (): la valeur de la propriété onShowing sera retournée.
  • getOnHiding (): la valeur de la propriété onHiding sera retournée.
  • getOnShown (): la valeur de la propriété onShown sera retournée.
  • setOnHidden (EventHandler v): la valeur v de la propriété onHidden sera définie.
  • setOnHiding (EventHandler v): la valeur de la propriété onHiding v sera définie.
  • setOnShowing (EventHandler v): la valeur v de la propriété onShowing sera définie.
  • setOnShown (EventHandler v): la valeur v de la propriété onShown sera définie.
  • hide (): Si contextMenu ou ses sous-menus s'affichent, cette méthode sera appelée pour le masquer.
  • isShowing (): L' affichage de la valeur de la propriété sera retourné.
  • onHiddenProperty (): Une fois le contextMenu masqué, cette méthode sera appelée.
  • onShowingProperty (); Avant que le contextMenu ne soit affiché, cette méthode sera appelée même si elle n'a aucun élément à afficher.
  • onHidingProperty (): Avant que le contextMenu ne soit masqué, cette méthode sera appelée.
  • onShownProperty (): Une fois le contextMenu affiché, cette méthode sera appelée.
  • addEventHandler (EventType et, EventHandler e): un gestionnaire d'événements e sera enregistré dans l'élément de menu.
  • removeEventHandler (EventType et, EventHandler e): Un gestionnaire d'événements e qui est enregistré ne sera pas enregistré dans l'élément de menu.
  • buildEventDispatchChain (EventDispatchChaint): Une chaîne de répartition d'événements t sera construite pour la cible.
  • montrantProperty (): Afin de vérifier si le contextMenu est visible, cette méthode sera appelée.

Comment créer un menu dans JavaFX?

Le menu JavaFX peut être créé en utilisant les étapes suivantes.

Étape 1: créer une classe qui s'étend de la classe d'application.

Importez le package javafx.application.Application pour étendre la classe Application et créer une classe qui l'étend.

public class JavaFXChartsExample extends Application (
)

Étape 2: créez le menu.

Comme déjà discuté, créez un menu en utilisant la syntaxe.

Menu m = new Menu();

Étape 3: créer des éléments de menu.

Créer des éléments de menu Éléments de menu qui doivent être ajoutés au menu qui doit être créé.

MenuItem mi1 = new MenuItem("Happy");

Étape 4: créez une barre de menus.

MenuBar mb = new MenuBar();

Étape 5: ajouter une barre de menus.

Ajoutez la barre de menus créée.

mb.getMenus().add(mn);

Étape 6: configurer le groupe et la scène.

Un groupe et une scène doivent être configurés après avoir effectué les étapes ci-dessus.

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

Exemples pour implémenter le menu JavaFX

Voyons quelques programmes JavaFX différents pour implémenter le menu JavaFX.

Exemple 1

Dans cet exemple, nous verrons un programme java avec des éléments de menu pour construire un menu.

Code:

//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);
)
)

Production:

Un menu s'affiche comme illustré ci-dessus. Lorsque vous cliquez dessus, une liste d'éléments s'affiche.

Exemple # 2

Il s'agit d'un programme java pour créer un menu avec des éléments de menu et ses sous-éléments.

Code:

//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);
)
)

Production:

Deux menus avec des sous-éléments différents seront affichés lors de l'exécution du code. Lorsque le deuxième menu est cliqué, des sous-éléments tels que Flipkart, Myntra et Queries seront affichés.

On peut voir qu'une tique est présente près de Myntra car la méthode setSelected est définie sur True.

Lorsque vous cliquez sur le menu Requêtes, deux sous-éléments tels que «liés au produit» et «liés à la livraison» s'affichent.

Conclusion

Dans JavaFX, le menu est utilisé comme une fenêtre contextuelle qui s'affiche lorsqu'un utilisateur clique dessus. Le menu se compose d'éléments de menu et de ses sous-éléments. Dans ce document, les points importants du menu JavaFX sont discutés.

Articles recommandés

Ceci est un guide du menu JavaFX. Nous discutons ici de la syntaxe, des constructeurs, des méthodes et des étapes pour créer le menu JavaFX ainsi que des exemples et l'implémentation de code. Vous pouvez également consulter les articles suivants pour en savoir plus-

  1. Fonction de hachage en Java
  2. Tableaux en programmation Java
  3. JLabel en Java
  4. Dispositions JavaFX
  5. Comment fonctionne la fonction de hachage en php avec la syntaxe?
  6. Top 15 des méthodes de JavaFX VBox