在 Java 中建立下拉選單

Rupam Yadav 2023年1月30日 2021年6月30日
  1. 在 Java 中使用 JOptionPane 建立下拉選單
  2. 在 Java 中使用 JComboBox 建立下拉選單
在 Java 中建立下拉選單

在本教程中,我們將學習如何使用兩種方法在 Java 中建立下拉選單。這兩種技術都用於建立 GUI 元件,下拉選單就是其中之一。

在 Java 中使用 JOptionPane 建立下拉選單

JOptionPane 類是 javax.swing 包的一部分,主要用於建立對話方塊。在對話方塊中,我們可以新增多種型別的元素,其中之一就是下拉元件。在示例中,我們建立了一個字串陣列 optionsToChoose,其中包含我們想要在下拉選單中顯示的選項。

然後,我們呼叫帶有多個引數的 JOptionPane.showInputDialog() 命令;首先是父元件,我們可以在其中將對話方塊附加到像 JFrame 這樣的框架。第二個引數是在下拉選單旁邊顯示的訊息。我們還可以設定對話方塊的標題,這是第三個引數,然後是訊息型別,可以是 ERROR_MESSAGEPLAIN_MESSAGE 之類的任何內容,但我們使用 QUESTION_MESSAGE

下一個引數是我們可以在下拉選單旁邊顯示的圖示,但我們將其設定為 null。第六個引數是要在下拉選單中選擇的選項陣列,最後一個引數是要選擇為預設選項的值。最後,我們將 JOptionPane.showInputDialog() 方法返回的選定值作為字串獲取並顯示在輸出中。

import javax.swing.*;

public class DropDown {
    public static void main(String[] args) {
        String[] optionsToChoose = {"Apple", "Orange", "Banana", "Pineapple", "None of the listed"};

        String getFavFruit = (String) JOptionPane.showInputDialog(
                null,
                "What fruit do you like the most?",
                "Choose Fruit",
                JOptionPane.QUESTION_MESSAGE,
                null,
                optionsToChoose,
                optionsToChoose[3]);

        System.out.println("Your chosen fruit: " + getFavFruit);
    }
}

輸出:

Java 下拉選單

Your chosen fruit: Apple

在 Java 中使用 JComboBox 建立下拉選單

在這個例子中,我們使用 JComboBox 函式,它是 javax.swing 包的一部分,用於在介面中顯示下拉選單。下面,我們首先建立要顯示在下拉選單中的選項陣列。JComboBox 是一個元件,需要一個框架來駐留,所以我們建立了一個 JFrame 物件。然後,我們建立 JComboBox 物件並在建構函式中將選項陣列作為其引數傳遞。

我們使用 jComboBox.setBounds() 函式設定對話方塊的位置和大小。然後我們建立一個 JButton 物件,在建構函式中傳遞要在其上顯示的文字,並設定邊界。最後,為了在從下拉選單中選擇一個選項時顯示一條訊息,我們建立了一個 JLabel 並設定了它的邊界。

接下來,我們使用 jFrame.add()JFrame 中新增所有元件。我們將 jFrame 的佈局設定為 null 並固定其大小和可見性。在程式碼的末尾,我們還新增了一個 ActionListener 命令,該命令偵聽按鈕執行的操作並呼叫其方法 actionPerformed() 以使用我們選擇的選項在 JLabel 中顯示訊息。

import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class DropDown {
    public static void main(String[] args) {
        String[] optionsToChoose = {"Apple", "Orange", "Banana", "Pineapple", "None of the listed"};

        JFrame jFrame = new JFrame();

        JComboBox<String> jComboBox = new JComboBox<>(optionsToChoose);
        jComboBox.setBounds(80, 50, 140, 20);

        JButton jButton = new JButton("Done");
        jButton.setBounds(100, 100, 90, 20);

        JLabel jLabel = new JLabel();
        jLabel.setBounds(90, 100, 400, 100);

        jFrame.add(jButton);
        jFrame.add(jComboBox);
        jFrame.add(jLabel);
        
        jFrame.setLayout(null);
        jFrame.setSize(350, 250);
        jFrame.setVisible(true);

        jButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                String selectedFruit = "You selected " + jComboBox.getItemAt(jComboBox.getSelectedIndex());
                jLabel.setText(selectedFruit);
            }
        });

    }
}

輸出:

Java 下拉選單 2

Author: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

相關文章 - Java GUI

相關文章 - Java Swing