Swingطريقة تخزين مصفوفة نوعها String في JSpinner

المثال التالي يعلمك طريقة إنشاء Model لجعل الـ Spinner مخصص فقط لتخزين مصفوفة من النصوص.


مثال

Main.java
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JSpinner;
import javax.swing.SpinnerListModel;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
 
public class Main {
 
    // هنا قمنا بإنشاء النافذة و جميع الأشياء التي سنضعها فيها
    static JFrame frame = new JFrame("JSpinner demo");
    static String[] levels = { "Easy", "Meduim", "Hard" };
    static SpinnerListModel model = new SpinnerListModel(levels);
    static JSpinner spinner = new JSpinner(model);
    static JLabel label = new JLabel("Level: Easy");
 
    public static void main(String[] args) {
 
        // frame هنا قمنا بتحديد أماكن الأشياء التي سنضيفها في الـ
        spinner.setBounds(100, 40, 100, 30);
        label.setBounds(100, 80, 100, 30);
 
        // frame هنا قمنا بإضافة جميع الأشياء التي قمنا بتعريفها سابقاً في الـ
        frame.add(spinner);
        frame.add(label);
 
        // frame هنا قمنا بتحديد خصائص الـ
        frame.setSize(300, 250);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setLayout(null);
        frame.setVisible(true);
 
 
        // spinner هنا نضع الأوامر التي نريد تنفيذها في كل مرة يتم فيها تغيير قيمة الـ
        spinner.addChangeListener(new ChangeListener() {
            @Override
                // سيتم عرض القيمة التي إختارها
            public void stateChanged(ChangeEvent e) {
                label.setText("Level: " + spinner.getValue());
            }
        });
 
    }
 
}

ستظهر لك النافذة التالية عند التشغيل.

يمكنك النقر على الأسهم الموجودة في يمين الـ Spinner لتبديل قيمة الـ Spinner.

طريقة تخزين مصفوفة String في JSpinner في جافا