Swingطريقة معرفة عدد و قيم العناصر التي قام المستخدم باختيارها في الـ JList عند النقر زر
المثال التالي يعلمك طريقة معرفة عدد و قيم العناصر التي قام المستخدم باختيارها في كائن الـ JList عند النقر على كائن الـ JButton.
مثال
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.DefaultListModel;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JLabel;
import javax.swing.JButton;
import javax.swing.JScrollPane;
public class Main {
// هنا قمنا بإنشاء النافذة و جميع الأشياء التي سنضعها فيها
static JFrame frame = new JFrame("JList demo");
static DefaultListModel model = new DefaultListModel();
static JList list = new JList( model );
static JScrollPane listScrollPane = new JScrollPane( list );
static JButton viewSelected = new JButton("View Selected");
static JLabel totalSelected = new JLabel();
static JLabel selectedItems = new JLabel();
public static void main(String[] args) {
// frame هنا قمنا بتحديد أماكن الأشياء التي سنضيفها في الـ
listScrollPane.setBounds(20, 40, 100, 230);
viewSelected.setBounds(140, 40, 150, 30);
totalSelected.setBounds(140, 80, 340, 30);
selectedItems.setBounds(140, 120, 340, 30);
// و التي بدورها ستظهر في القائمة model هنا أضفنا عدة عناصر في الـ
model.addElement("red");
model.addElement("blue");
model.addElement("green");
model.addElement("yellow");
model.addElement("orange");
model.addElement("brown");
model.addElement("pink");
model.addElement("purple");
model.addElement("gray");
model.addElement("black");
model.addElement("white");
// frame هنا قمنا بإضافة جميع الأشياء التي قمنا بتعريفها سابقاً في الـ
frame.add(listScrollPane);
frame.add(viewSelected);
frame.add(totalSelected);
frame.add(selectedItems);
// frame هنا قمنا بتحديد خصائص الـ
frame.setSize(550, 350);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLayout(null);
frame.setVisible(true);
// viewSelected هنا نضع الأوامر التي نريد تنفيذها عند النقر على الـ
viewSelected.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e)
{
// سيتم عرض عدد العناصر التي قام المستخدم باختيارها و بالإضافة إلى قيمهم
totalSelected.setText("Total Selected: "+list.getSelectedIndices().length);
selectedItems.setText("Selected Items: "+list.getSelectedValuesList());
}
});
}
}
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.DefaultListModel;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JLabel;
import javax.swing.JButton;
import javax.swing.JScrollPane;
public class Main {
// هنا قمنا بإنشاء النافذة و جميع الأشياء التي سنضعها فيها
static JFrame frame = new JFrame("JList demo");
static DefaultListModel model = new DefaultListModel();
static JList list = new JList( model );
static JScrollPane listScrollPane = new JScrollPane( list );
static JButton viewSelected = new JButton("View Selected");
static JLabel totalSelected = new JLabel();
static JLabel selectedItems = new JLabel();
public static void main(String[] args) {
// frame هنا قمنا بتحديد أماكن الأشياء التي سنضيفها في الـ
listScrollPane.setBounds(20, 40, 100, 230);
viewSelected.setBounds(140, 40, 150, 30);
totalSelected.setBounds(140, 80, 340, 30);
selectedItems.setBounds(140, 120, 340, 30);
// و التي بدورها ستظهر في القائمة model هنا أضفنا عدة عناصر في الـ
model.addElement("red");
model.addElement("blue");
model.addElement("green");
model.addElement("yellow");
model.addElement("orange");
model.addElement("brown");
model.addElement("pink");
model.addElement("purple");
model.addElement("gray");
model.addElement("black");
model.addElement("white");
// frame هنا قمنا بإضافة جميع الأشياء التي قمنا بتعريفها سابقاً في الـ
frame.add(listScrollPane);
frame.add(viewSelected);
frame.add(totalSelected);
frame.add(selectedItems);
// frame هنا قمنا بتحديد خصائص الـ
frame.setSize(550, 350);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLayout(null);
frame.setVisible(true);
// viewSelected هنا نضع الأوامر التي نريد تنفيذها عند النقر على الـ
viewSelected.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e)
{
// سيتم عرض عدد العناصر التي قام المستخدم باختيارها و بالإضافة إلى قيمهم
totalSelected.setText("Total Selected: "+list.getSelectedIndices().length);
selectedItems.setText("Selected Items: "+list.getSelectedValuesList());
}
});
}
}
ستظهر لك النافذة التالية عند التشغيل. قم بإختيار بعض العناصر ثم أنقر الزر لتظهر لك النتيجة.
لإختيار أكثر من عنصر, أبقي إصبعك على الزر Ctrl أثناء إختيار العناصر.