التعامل مع العناصر الرسومية فى الجافا باستخدام الشفرة (العنصر JList)
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: واجهة المستخدم الرسومية Java Swing
صفحة 1 من اصل 1 • شاطر
التعامل مع العناصر الرسومية فى الجافا باستخدام الشفرة (العنصر JList)
بسم الله الرحمن الرحيم
_ العنصر JList هو أحد العناصر الرسومية فى المكتبة swing و الذى يستخدم فى عرض قائمة من العناصر بحيث يسمح للمستخدم لاختيار واحد أو أكثر من العناصر التى يحتويها و يوضح هذا المقال كيفية التعامل مع العنصر الرسومى JList وكيفية انشائة
أولا : كيفية إنشاء العنصر JList
حتى تتمكن من انشاء العنصر الرسومى jlist قم بانشاء مثيل جديد من الكائن على النحو التالى :
- الكود:
JList list = new JList();
ويتم إضافة العنصر الرسومى على النافذة أو الحاوية على النحو التالى :
- الكود:
panel.add(list);
frame.add(list);
لكنك لو قمت بتشغيل التطبيق لن تحصل على اى شىء وذلك لانة لا تستطيع رؤية هذا العنصر الرسومى على النافذة إلا اذا كان يحتوى على بعض العناصر بداخلة
ثانيا : إضافة العناصر الى العنصر JList
توجد عدة طرق لاضافة عناصر للعنصر JList منها :
- إنشاء مصفوفة عناصر ثم إضافتها الى العنصر الرسومى على النحو التالى :
- الكود:
String subject[] = {"Math", "Computer", "Phisics", "Chemestry"};
JList list = new JList(subject);
- إستخدام الفئة DefaultListModel
أذا كنت تستخدم جافا 7 فما فوق يمكنك استخدام الفئة DefaultListModel لانشاء عناصر jlist و يتم على النحو التالى :
- الكود:
DefaultListModel<String> listModel = new DefaultListModel<>();
listModel.addElement("USA");
listModel.addElement("India");
listModel.addElement("Vietnam");
listModel.addElement("Canada");
listModel.addElement("Denmark");
listModel.addElement("France");
listModel.addElement("Great Britain");
listModel.addElement("Japan");
لكن فى تلك الحالة سيتم أستخدام الكود التالى لانشاء القائمة JList على النحو التالى :
- الكود:
JList<String> list = new JList<>(listModel);
panel.add(list);
frame.add( list);
ثالثا : إضافة شريط تمرير Scrollpane
دعونا الآن نحاول تغيير حجم الإطار فى المثال أعلاه و سوف نحصل على الإخراج التالي:
وكما هو ظاهر أعلاه فان باقى الدول فى المثال قد أختلفت عندما غيرنا حجم النافذة ولحل تلك المشكلة سنقوم بإضافة شريط التمرير لتظهر جميع العناصر في هذه الحالة ...وذلك من خلال الكود التالى :
- الكود:
frame.add(new JScrollPane(list));
والنتيجة
رابعا :وضع التحديد Selection Mode :
يحدد وضع التحديد الطريقة يمكن تحديد العناصر من القائمة JList...وهناك 3 طرق يتحديد العناصر هى :
- SINGLE_SELECTION:ويسمح هذا الوضع بأختيار عنصر واحد فقط من القائمة
- SINGLE_INTERVAL_SELECTION: ويسمح هذا الوضع بتحيدد عناصر متعددة لكنها يجب أن تكون متجاورة وذلك من خلال النقر باستمرار على زر CTRL و أختيار العناصر بالماوس
- MULTIPLE_INTERVAL_SELECTION: هذا الوضع هو الوضع الافتراضي ويسمح بتحديد عناصر متعددة سواء كانت متجاورة أو غير متجاورة
وذلك من خلال النقر باستمرار على المفتاح SHIFT مع الماوس لتحديد عناصر متجاورة. أما للعناصر غير متجاورة، ونحن بحاجة إلى الضغط باستمرار على مفتاح CTRL مع الماوس.
ولا ستخدام وضع التحديد الذى تم ذكرة أعلاه يتم استدعاء الاسلوب setSelectionMode مع تمرير وضع التحديد الية وذلك على النحو التالى :
- الكود:
list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
خامسا : معالجات الحدث Event Handler
التعامل مع الحدث في JList هي مشابهة جدا باقى مكونات المكتبة سوينغ الأخرى. فقط نقوم تسجيل المستمع الحدث ويتم إخطار عندما يحدث هذا الحدث.
- الكود:
list.addListSelectionListener(new ListSelectionListener() {
@Override
public void valueChanged(ListSelectionEvent e)
{
}
}
});
شكر لكم
زهراء- ........
- تاريخ التسجيل : 18/02/2011
المساهمات : 438
النقاط : 769
التقيم : 67
الدولة :
الجنس :
رد: التعامل مع العناصر الرسومية فى الجافا باستخدام الشفرة (العنصر JList)
مشكورة جدا على مقال الرائع
أيمن الإبراهيم- ........
- تاريخ التسجيل : 19/03/2013
المساهمات : 251
النقاط : 398
التقيم : 1
الدولة :
الجنس :
رد: التعامل مع العناصر الرسومية فى الجافا باستخدام الشفرة (العنصر JList)
استاذة زهراء لا املك غير الدعاء لكى بظهر غيب نظير ما تقدمية لنا من علم مفيد
ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم
| |
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: واجهة المستخدم الرسومية Java Swing
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى
اليوم في 7:09 pm من طرف moslema_r
» شركة تنظيف فرشات بالرياض
الثلاثاء مارس 26, 2024 6:26 pm من طرف moslema_r
» شركة تنظيف استراحات بالرياض
الأحد مارس 24, 2024 10:49 pm من طرف moslema_r
» كشف تسربات المياه في جدة
السبت مارس 23, 2024 7:23 pm من طرف gmalnagy
» خدمات كشف تسربات المياه بخصم 25% - اتصل الان
السبت مارس 23, 2024 7:22 pm من طرف gmalnagy
» شركة تنظيف ثريات بالرياض
الخميس مارس 21, 2024 7:23 pm من طرف moslema_r
» كهربائي منازل بالرياض
الأحد مارس 17, 2024 1:52 pm من طرف رانيا حماد
» افضل شركة نقل عفش بالرياض نقل باكستاني 40% خصم | موقع الانوار
الأحد مارس 17, 2024 1:25 pm من طرف رانيا حماد
» افضل معلم جبس بالرياض تركيب جبس بورد بالرياض 20% خصم اتصل الآن
الأحد مارس 17, 2024 1:09 pm من طرف رانيا حماد
» شراء اثاث مستعمل بالكويت بخصم 30%
الأحد مارس 17, 2024 12:54 pm من طرف رانيا حماد