Swingطريقة تنفيذ أوامر في كل مرة يتم فيها تغيير قيمة الـ JSpinner
المثال التالي يعلمك طريقة تنفيذ أوامر في كل مرة يتم فيها تغيير قيمة الـ Spinner.
مثال
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JSpinner;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
public class Main {
// هنا قمنا بإنشاء النافذة و جميع الأشياء التي سنضعها فيها
static JFrame frame = new JFrame("JSpinner demo");
static JSpinner spinner = new JSpinner();
static JLabel label = new JLabel("Value: 0");
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("Value: " + spinner.getValue());
}
});
}
}
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JSpinner;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
public class Main {
// هنا قمنا بإنشاء النافذة و جميع الأشياء التي سنضعها فيها
static JFrame frame = new JFrame("JSpinner demo");
static JSpinner spinner = new JSpinner();
static JLabel label = new JLabel("Value: 0");
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("Value: " + spinner.getValue());
}
});
}
}
ستظهر لك النافذة التالية عند التشغيل.
يمكنك النقر على الأسهم الموجودة في يمين الـ Spinner لزيادة أو إنقاص قيمته و تبديل نص الـ Label.