عموما الكود حلو ... وكل شيخ وله طريقة
ما احنا عاملين الموضوع يا اسلام عسان نشوف افضل الطرق
مش عشان كل واحد يمشي في طريقه
وافضل الطرق تقليل الكود مع الحكمه في اختيار الكود
وبردو انت مفهمتش اللعبه
بص يا اسلام المطلوب ان احنا نحلل الصورة اللي فيها الابليكيشن
بمعني انت هتقول ان الويندو اللي فوق دي انا قسمتها 3 اجزاء (( 3 panel ))
ورتبتهم باستخدام الـ BorderLayout بحيث اخدت الجزء الشمالي NORTH للـ panel الاولي وحطيت فيها الـ Label Component
والجزء الـ SOUTH الجنوبي حطيت فيه الـ Panel التانية وحطيت فيه 3 Button Component سواء كانت Button أو JButton
الجزء اللي في الوسط CENTER حطيت فيه Component مباشرة اسمها List
بس .. والمثال بسيط خالص
###################################
يقوم واحد تاني يدخل ويقول وجهة نظره عكس وجهة نظري مثلا
انا شوفت الكود بتاعك اهو وانت عامل حاجة تانية غير اللي انا عاملها .. فدي وجهة نظرك
بس فنقوم نتناقش بقي في الاكواد او وجهات النظر
فتعليقي علي الكود بتاعك كالآتي اذا سمحت طبعا
اولا :: انت مستخدمتش أي Layout Manager في الكود
ودا bad behaviour
ليه ؟؟
لان دا بيجبرك ان تحدد الـ Bounds بتاع كل Component علي حده
الحاجة التانية
راجع كويس الكود ........... معايا
دلوقتي
انت ليه معرف كدا
Label l0,l,l2,l3,l4,l5,l6,l7,l8;
كان افضل تعمل كدا
وترجع تحت تـ Instantiate الـ array اللي انت عاملها بعدد الـ labels اللي انت عاوزه
وبالتالي مش هتبقي محتاج تعمل كل السطور دي
l = new Label("List0");
l.setBounds(5,55,300,20);
l.setBackground(Color.white);
add(l);
l2= new Label("List1");
l2.setBounds(5,75,300,20);
l2.setBackground(Color.white);
add(l2);
l3= new Label("List2");
l3.setBounds(5,95,300,20);
l3.setBackground(Color.white);
add(l3);
l4= new Label("List3");
l4.setBounds(5,115,300,20);
l4.setBackground(Color.white);
add(l4);
l5= new Label("List4");
l5.setBounds(5,135,300,20);
l5.setBackground(Color.red);
add(l5);
l6= new Label("List5");
l6.setBounds(5,155,350,20);
l6.setBackground(Color.white);
add(l6);
l7= new Label("List6");
l7.setBounds(5,175,300,20);
l7.setBackground(Color.white);
add(l7);
l8= new Label("List7");
l8.setBounds(5,195,300,20);
l8.setBackground(Color.white);
add(l8);
بـ loop صغيره خالص هتقدر تحل محل كل السطور دي
بس في الاول هتحتاج تعرف متغيرين عشان الـ Location
عشان
setBounds(int x, int y, int width, int high);
وبرده نفس الحال مع الـ
الحاجة التالته انت ليه عاملها labels ؟؟
ما في Component اسمها List
java.awt.List
معاها method
add
بدل كل الكلام دا
###############################
ولو استخدمنا الـ Layout Managers كان هيبقي افضل من الكلام دا كله
وهو دا اصلا محور اللعبه
شكرا لتفاعلك يا اسلام