JavaFX-menüü tutvustus

JavaFX-i menüüs kasutatakse menüüd hüpikmenüüna, mis koosneb paljudest menüüelementidest, mis kuvatakse kasutaja klõpsamisel. Pärast seda lähevad menüüelemendid varjatud olekusse. Selle loomiseks käivitage klass javafx.scene.control.Menu. Järgmistes lõikudes käsitletakse süntaksi, konstruktoreid ja JavaFX Menüü paljusid teisi aspekte.

Süntaks:

JavaFX-is saab menüü luua järgmiselt.

Menu mn = new Menu();

Enne koodi käivitamist veenduge alati, et klass javafx.scene.chart.Menu oleks programmi imporditud.

JavaFX Menu konstruktorid

JavaFX-menüü jaoks on neli konstruktorit. Nemad on:

  • Menüü (): luuakse tühi menüü.
  • Menüü (stringid): luuakse menüü, mille sildiks on stringi s.
  • Menüü (stringid, sõlme teine): luuakse menüü, mille sildiks on string s ja graafilise sõlmena nd.
  • Menüü (stringid, sõlme teine, element … .. i): luuakse menüü, mille sildiks on stringi s ja graafiline sõlmpunkt ning lisatakse antud üksused loendisse.

JavaFX menüü meetodid

Allpool käsitletakse mõnda JavaFX-i menüümeetodit:

  • getItems (): selles menüüs kuvatavad üksused.
  • getOnHidden (): onHidden vara väärtus tagastatakse.
  • getOnShowing (): onShowing vara väärtus tagastatakse.
  • getOnHiding (): kinnisvara väärtuse peitmine tagastatakse.
  • getOnShown (): onShown vara väärtus tagastatakse.
  • setOnHidden (EventHandler v): seatakse onHidden vara väärtus v.
  • setOnHiding (EventHandler v): seatakse vara väärtus peitmiseks v.
  • setOnShowing (EventHandler v): seadistatakse onShowingi vara v väärtus.
  • setOnShown (EventHandler v): seadistatakse onShown omaduse väärtus v.
  • hide (): kui kontekstimenüü või selle alammenüüd kuvatakse, kutsutakse seda meetodit selle peitmiseks.
  • isShowing (): vara väärtuse näitamine tagastatakse.
  • onHiddenProperty (): Kui kontekstimenüü on peidetud, nimetatakse seda meetodit.
  • onShowingProperty (); Enne kontekstimenüü kuvamist kutsutakse seda meetodit isegi siis, kui sellel pole kuvatavaid üksusi.
  • onHidingProperty (): enne kontekstimenüü peitmist nimetatakse seda meetodit.
  • onShownProperty (): Kui kontekstimenüü on kuvatud, nimetatakse seda meetodit.
  • addEventHandler (EventType et, EventHandler e): Sündmuste käitleja e registreeritakse menüüelemendis.
  • removeEventHandler (EventType et, EventHandler e): registreeritud sündmustekäitleja e registreeritakse menüüelemendist.
  • buildEventDispatchChain (EventDispatchChaint): Sihtmärgi jaoks luuakse sündmuste dispetšeahel t.
  • showsProperty (): selleks, et kontrollida, kas kontekstimenüü on nähtav, kutsutakse seda meetodit.

Kuidas JavaFX-is menüüd luua?

JavaFX menüü saab luua järgmiste sammude abil.

1. samm: looge klass, mis laieneb rakendusklassist.

Importige pakett javafx.application.Application, et laiendada rakendusklassi ja luua klass, mis seda laiendab.

public class JavaFXChartsExample extends Application (
)

2. samm: looge menüü.

Nagu juba arutatud, looge süntaksi abil menüü.

Menu m = new Menu();

3. samm: looge menüüüksused.

Loo menüüüksusedMenüü üksused, mis tuleb lisada loodavasse menüüsse.

MenuItem mi1 = new MenuItem("Happy");

4. samm: looge menüüriba.

MenuBar mb = new MenuBar();

5. samm: lisage menüüriba.

Lisage loodud menüüriba.

mb.getMenus().add(mn);

6. samm: rühma ja stseeni konfigureerimine.

Pärast ülaltoodud toimingute tegemist tuleb konfigureerida rühm ja stseen.

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

JavaFX menüü juurutamise näited

Vaadakem JavaFX-menüü rakendamiseks mõnda erinevat JavaFX-programmi.

Näide nr 1

Selles näites näeme menüü koostamiseks menüüelementidega java-programmi.

Kood:

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

Väljund:

Kuvatakse menüü, nagu ülal näidatud. Klõpsamisel kuvatakse üksuste loend.

Näide 2

See on Java-programm menüü üksuste ja selle alammenüüdega menüü loomiseks.

Kood:

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

Väljund:

Koodi täitmisel kuvatakse kaks erineva alammenüüga menüüd. Teise menüü klõpsamisel kuvatakse alamüksused nagu Flipkart, Myntra ja Queries.

On näha, et Myntra lähedal on linnuke, kuna meetod setSelected on seatud True.

Kui klõpsatakse menüüd Päringud, kuvatakse kaks alamüksust, näiteks „Seotud tootega“ ja „Seotud tarnimisega“.

Järeldus

JavaFX-is kasutatakse menüüd hüpikmenüüna, mis kuvatakse, kui kasutaja sellel klõpsab. Menüü koosneb menüüelementidest ja selle alamüksustest. Selles dokumendis käsitletakse JavaFX-i menüü olulisi punkte.

Soovitatavad artiklid

See on JavaFX menüü juhend. Siin käsitleme süntaksi, konstruktoreid, meetodeid ja JavaFX menüü loomise samme koos näidete ja koodi rakendamisega. Lisateabe saamiseks võite vaadata ka järgmisi artikleid -

  1. Räsimisfunktsioon Java-s
  2. Massiivid Java programmeerimises
  3. JLabel Java
  4. JavaFX-i paigutused
  5. Kuidas räsimisfunktsioon töötab php-s süntaksiga?
  6. JavaFX VBoxi 15 parimat meetodit

Kategooria: