التعامل مع العناصر الرسومية فى الجافا باستخدام الشفرة (العنصر JList)

استعرض الموضوع السابق استعرض الموضوع التالي اذهب الى الأسفل

التعامل مع العناصر الرسومية فى الجافا باستخدام الشفرة (العنصر JList)

مُساهمة من طرف زهراء في الجمعة فبراير 07, 2014 7:04 pm

بسم الله الرحمن الرحيم

_ العنصر  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
المساهمات : 262
النقاط : 372
التقيم : 24
الدولة : مصر
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: التعامل مع العناصر الرسومية فى الجافا باستخدام الشفرة (العنصر JList)

مُساهمة من طرف أيمن الإبراهيم في الجمعة فبراير 07, 2014 9:12 pm

مشكورة جدا على مقال الرائع

أيمن الإبراهيم
........
........

تاريخ التسجيل : 19/03/2013
المساهمات : 251
النقاط : 397
التقيم : 0
الدولة : سوريا
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: التعامل مع العناصر الرسومية فى الجافا باستخدام الشفرة (العنصر JList)

مُساهمة من طرف أحمد مناع في الجمعة فبراير 07, 2014 11:21 pm

استاذة زهراء لا املك غير الدعاء لكى بظهر غيب نظير ما تقدمية لنا من علم مفيد

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم

إن فقدت مكان بذورك التي بذرتها يوما ما سيخبرك المطر أين زرعتها ..لذا إبذر الخير فوق أي أرض وتحت أي سماء ومع أي أحد.. فأنت لا تعلم أين تجده ومتى تجده؟! إزرع جميلا ولو في غير موضعه .... فلا يضيع جميلا أينما زرعا .. فما أجمل العطاء... فقد تجد جزاءه في الدنيا أو يكون لك ذخرا في الآخرة

أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 810
النقاط : 1479
التقيم : 69
الدولة : مصر
الجنس : ذكر

http://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى