Kensoft PH
  • Download
    • KenshotApplication
  • Contact
  • About
Java Quiz
No Result
View All Result
Kensoft PH
  • Download
    • KenshotApplication
  • Contact
  • About
Java Quiz
No Result
View All Result
Kensoft PH
No Result
View All Result
Home Java

How to use the JavaFX MenuButton | 100% Perfect Tutorial

June 19, 2022 - Updated on December 10, 2022
in Java
Reading Time: 3 mins read
0
JavaFX MenuButton
375
VIEWS
Share on FacebookShare on TwitterShare via Email

JavaFX MenuButton is very useful when you have a list of items similar to JavaFX ComboBox. A MenuButton in JavaFX appearance is like a button and executes like a menu. It shows the selection in a pop-up menu when the menu button is executed by clicking the MenuButton. We need to use the MenuItems to add a selection of items to the JavaFX MenuButton. MenuItems should have an Action Event handler to add functionality to the lists of items.

In this article, you will learn the basics of how to use the JavaFX MenuButton and I will give a few examples to show you how to use the MenuButton control like creating the node, displaying it on the scene, and more. Please continue reading to learn more in this tutorial, which is perfect for beginners.

Contents

Toggle
  • How to use the JavaFX MenuButton
    • Create the JavaFX MenuButton
      • Output
    • Adding Action Event to the MenuItem
      • Lambda Expression
      • Anonymous inner class
    • Add an Icon or Graphic to the MenuButton
      • Output
    • Setting styles or CSS
      • Output
  • YouTube Video

How to use the JavaFX MenuButton

To use the JavaFX MenuButton, we need to create the object of the MenuButton class. Once the node is created we can add items to it using the MenuItem class and display the MenuButton in the scene. The following examples below will teach you how to use the MenuButton. The first example will be creating the MenuButton and displaying it in the scene.

Create the JavaFX MenuButton

Creating the MenuButton in JavaFX is very easy. You need to instantiate the MenuButton constructor and follow the code snippet below to learn more.

// This is how to create the MenuButton in JavaFX
MenuButton mButton = new MenuButton("Learn more");

The next step is to add items to the JavaFX MenuButton and display the MenuButton on the scene, and you also need to have a layout in JavaFX. To do this, follow the given code snippet below.

VBox root = new VBox();
Scene scene = new Scene(root, 400, 400);

MenuButton mb = new MenuButton("Click me to see the items");

MenuItem item1 = new MenuItem("Google");
MenuItem item2 = new MenuItem("Bing");
MenuItem item3 = new MenuItem("Yahoo");
MenuItem item4 = new MenuItem("Duckduck Go");


mb.getItems().addAll(item1,item2,item3,item4);

Output

JavaFX MenuButton Items

Adding Action Event to the MenuItem

To make the JavaFX MenuButton event, you add the action event to the MenuItem. You can use Lambda expressions or anonymous inner class implementation. The code snippet below will show you how to add an event handler to the JavaFX MenuButton.

Lambda Expression

I will show you the difference between Lambda expression and anonymous inner class implementation, and the first one is the Lambda Expression.

item1.setOnAction(event ->{
    lbl.setText(item1.getText());
});

item2.setOnAction(event ->{
    lbl.setText(item2.getText());
});

item3.setOnAction(event ->{
    lbl.setText(item3.getText());
});

item4.setOnAction(event ->{
    lbl.setText(item4.getText());
});

Anonymous inner class

item1.setOnAction(new EventHandler<ActionEvent>() {
    @Override
    public void handle(ActionEvent event) {
        lbl.setText(item1.getText());
    }
});

item2.setOnAction(new EventHandler<ActionEvent>() {
    @Override
    public void handle(ActionEvent event) {
        lbl.setText(item2.getText());
    }
});

item3.setOnAction(new EventHandler<ActionEvent>() {
    @Override
    public void handle(ActionEvent event) {
        lbl.setText(item3.getText());
    }
});

item4.setOnAction(new EventHandler<ActionEvent>() {
    @Override
    public void handle(ActionEvent event) {
        lbl.setText(item4.getText());
    }
});

Add an Icon or Graphic to the MenuButton

If you are interested in how to add an icon to the MenuButton, this example will tell you how to set graphic to the JavaFX MenuButton. Proceed to the given code snippet below to learn more.

try {
    FileInputStream file = new FileInputStream("C:\\Users\\kensoft\\Desktop\\icon.png");
    Image image = new Image(file);
    ImageView iv = new ImageView(image);
    mb.setGraphic(iv);
} catch (FileNotFoundException e) {
    System.out.println("Not found");
}

Output

JavaFX MenuButton Icon

Setting styles or CSS

If you want your control to look better, you need to set the JavaFX MenuButton CSS and learn to use the JavaFX CSS, and implement this in your JavaFX application. The given example code below will show you the basic inline styling of your JavaFX application.

mb.setStyle("-fx-background-color: cyan; -fx-cursor: hand;");

Output

JavaFX MenuButton CSS

YouTube Video

YouTube video

Previous Post

How to use the JavaFX Hyperlink | 100% Perfect for beginner

Next Post

Toggle Button in JavaFX | 100% Perfect for beginners

KENSOFT

KENSOFT

What’s up! Kent is my name. The name KENSOFT is derived from the words Kent and Software. My programming language of choice is Java

Related tutorials

How to Use the JavaFX Pie Chart 100% For Beginners
Java

How to Use the JavaFX Pie Chart 100% For Beginners

June 12, 2024 - Updated on October 6, 2024
205
How to Connect to an API Using JavaFX
Java

How to Connect to an API Using JavaFX

May 26, 2024 - Updated on September 28, 2024
215
JavaFX SQLite Database CRUD Tutorial
Java

JavaFX SQLite Database CRUD Tutorial | Note Application

May 26, 2024 - Updated on September 28, 2024
586
Next Post
JavaFX Toggle Button

Toggle Button in JavaFX | 100% Perfect for beginners

RadioButton in JavaFX

RadioButton in JavaFX | 100% Perfect for beginners

How to use CheckBox in JavaFX | 100% Perfect For Beginners

How to use CheckBox in JavaFX | 100% Perfect For Beginners

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Tools

Multi-platform installer builder

Java profiler

  • Trending
  • Comments
  • Latest
MySQL database using XAMPP

How to connect Java to MySQL database using Xampp server | 100% best for beginners

October 27, 2020 - Updated on January 23, 2023
Failed to automatically set up a JavaFX Platform

Failed to automatically set up a JavaFX Platform SOLVED Apache NetBeans 12.3 | Best way

April 11, 2021 - Updated on July 3, 2022
JavaFX 17

How To install JDK 17 and JavaFX 17 on NetBeans IDE | Best

November 15, 2021 - Updated on December 13, 2021
hide and show password in jPasswordField

JPasswordField in Java Hide or Show Password | 100% best for beginners

April 2, 2021 - Updated on September 21, 2022
Failed to automatically set up a JavaFX Platform

Failed to automatically set up a JavaFX Platform SOLVED Apache NetBeans 12.3 | Best way

3DES in Java and AES in Java

How to use AES and 3DES in Java | 100% best for beginners

JavaFX Splash Screen

How to create JavaFX Splash Screen | 100% best for beginners

set up JavaFX and Scene Builder

How to set up JavaFX and Scene Builder in NetBeans IDE | 100% best for beginners

How to Use the JavaFX Pie Chart 100% For Beginners

How to Use the JavaFX Pie Chart 100% For Beginners

June 12, 2024 - Updated on October 6, 2024
How to Connect to an API Using JavaFX

How to Connect to an API Using JavaFX

May 26, 2024 - Updated on September 28, 2024
JavaFX SQLite Database CRUD Tutorial

JavaFX SQLite Database CRUD Tutorial | Note Application

May 26, 2024 - Updated on September 28, 2024
How to take a screenshot on PC using Kenshot

How to Take a Screenshot on PC Using Kenshot: A Full Guide

January 18, 2024 - Updated on October 6, 2024

Latest Tutorials

How to Use the JavaFX Pie Chart 100% For Beginners

How to Use the JavaFX Pie Chart 100% For Beginners

June 12, 2024 - Updated on October 6, 2024
How to Connect to an API Using JavaFX

How to Connect to an API Using JavaFX

May 26, 2024 - Updated on September 28, 2024
JavaFX SQLite Database CRUD Tutorial

JavaFX SQLite Database CRUD Tutorial | Note Application

May 26, 2024 - Updated on September 28, 2024

Popular Tutorials

  • MySQL database using XAMPP

    How to connect Java to MySQL database using Xampp server | 100% best for beginners

    0 shares
    Share 0 Tweet 0
  • Failed to automatically set up a JavaFX Platform SOLVED Apache NetBeans 12.3 | Best way

    0 shares
    Share 0 Tweet 0
  • How To install JDK 17 and JavaFX 17 on NetBeans IDE | Best

    0 shares
    Share 0 Tweet 0
Facebook Instagram Youtube Github LinkedIn Discord
Kensoft PH

What’s up! I'm Kent. The name KENSOFT is derived from the words Kent and Software. My programming language of choice is Java, which I use to create computer applications. In a company, I created applications and a website.

Categories

Website

Check the status

Privacy Policy

Terms and Condition

Sitemap

Latest Tutorials

How to Use the JavaFX Pie Chart 100% For Beginners

How to Use the JavaFX Pie Chart 100% For Beginners

June 12, 2024 - Updated on October 6, 2024
How to Connect to an API Using JavaFX

How to Connect to an API Using JavaFX

May 26, 2024 - Updated on September 28, 2024
JavaFX SQLite Database CRUD Tutorial

JavaFX SQLite Database CRUD Tutorial | Note Application

May 26, 2024 - Updated on September 28, 2024

© 2024 Made With Love By KENSOFT PH

No Result
View All Result
  • Download
    • Kenshot
  • Contact
  • About
  • Java Quiz

© 2024 Made With Love By KENSOFT PH

This website uses cookies. By continuing to use this website you are giving consent to cookies being used. Visit our Privacy and Cookie Policy.