Programming Basics SQL HTML CSS JavaScript React Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Linux Learn Typing

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 في جافا