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

Swingطريقة تحديد أقل و أكثر قيمة يمكن وضعها في الـ JSpinner

المثال التالي يعلمك طريقة إنشاء Model لجعل الـ Spinner مخصص فقط لتخزين أرقام. بالإضافة إلى تحديد أقل و أكثر قيمة يمكن وضعها فيه.


مثال

Main.java
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JSpinner;
import javax.swing.SpinnerNumberModel;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
public class Main {
// هنا قمنا بإنشاء النافذة و جميع الأشياء التي سنضعها فيها
static JFrame frame = new JFrame("JSpinner demo");
static SpinnerNumberModel model = new SpinnerNumberModel(5, 0, 10, 1);
static JSpinner spinner = new JSpinner(model);
static JLabel label = new JLabel("Value: 5");
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.SpinnerNumberModel; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; public class Main { // هنا قمنا بإنشاء النافذة و جميع الأشياء التي سنضعها فيها static JFrame frame = new JFrame("JSpinner demo"); static SpinnerNumberModel model = new SpinnerNumberModel(5, 0, 10, 1); static JSpinner spinner = new JSpinner(model); static JLabel label = new JLabel("Value: 5"); 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.

لاحظ أن القيمة الأولية التي تظهر الـ Spinner هي 5, و أقل قيمة يمكن إدخالها فيه هي 0, و أكثر قيمة يمكن إدخالها فيه هي 10, و لاحظ أن قيمة الـ Spinner تزيد أو تقل 1 فقط في كل مرة.

طريقة تحديد أقل و أكثر قيمة يمكن وضعها في ال JSpinner في جافا