Ввод ComboBox в Java: различные методы получения выбора пользователя

Чтобы получить данные из ComboBox в Java, вы можете использовать различные методы. Вот несколько подходов:

Метод 1: ActionListener

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class ComboBoxExample {
    public static void main(String[] args) {
        JFrame frame = new JFrame("ComboBox Input");
        JPanel panel = new JPanel();
        JComboBox<String> comboBox = new JComboBox<>(new String[]{"Option 1", "Option 2", "Option 3"});
        // Add an ActionListener to the ComboBox
        comboBox.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                String selectedValue = (String) comboBox.getSelectedItem();
                System.out.println("Selected value: " + selectedValue);
            }
        });
        panel.add(comboBox);
        frame.add(panel);
        frame.setSize(300, 200);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
    }
}

Метод 2: ItemListener

import javax.swing.*;
import java.awt.*;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
public class ComboBoxExample {
    public static void main(String[] args) {
        JFrame frame = new JFrame("ComboBox Input");
        JPanel panel = new JPanel();
        JComboBox<String> comboBox = new JComboBox<>(new String[]{"Option 1", "Option 2", "Option 3"});
        // Add an ItemListener to the ComboBox
        comboBox.addItemListener(new ItemListener() {
            @Override
            public void itemStateChanged(ItemEvent e) {
                if (e.getStateChange() == ItemEvent.SELECTED) {
                    String selectedValue = (String) comboBox.getSelectedItem();
                    System.out.println("Selected value: " + selectedValue);
                }
            }
        });
        panel.add(comboBox);
        frame.add(panel);
        frame.setSize(300, 200);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
    }
}

Метод 3: ActionListener с лямбда-выражением (Java 8+)

import javax.swing.*;
import java.awt.*;
public class ComboBoxExample {
    public static void main(String[] args) {
        JFrame frame = new JFrame("ComboBox Input");
        JPanel panel = new JPanel();
        JComboBox<String> comboBox = new JComboBox<>(new String[]{"Option 1", "Option 2", "Option 3"});
        // Add an ActionListener with Lambda Expression
        comboBox.addActionListener((e) -> {
            String selectedValue = (String) comboBox.getSelectedItem();
            System.out.println("Selected value: " + selectedValue);
        });
        panel.add(comboBox);
        frame.add(panel);
        frame.setSize(300, 200);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
    }
}

Это всего лишь несколько методов получения входных данных из ComboBox в Java. Каждый метод использует разные прослушиватели событий для захвата выбранного значения. Вы можете выбрать метод, который соответствует вашим потребностям и стилю кодирования.