مقدمة الي برمجة واجهات المستخدم
* في كل البرامج السابقة استخدمنا 005016 أو 100008306 في ادخال البيانات او
اخراج المخرجات ؛ ولكن هذه الطرق بها مشكلة الحدود الضيقة في التعامل .... مثلا اذا
اردنا ان نقرأ 20 عدد من المستخدم عن طريق 100800003086 فأننا سنحتاج لإظهار
عدد 20 ع010216م5/10/10_وذلك غير فعال في معظم البرامج ويسبب ملل للمستخدم.
* نقوم ببرمجة وجهات المستخدم عن طريق انشاء كائنات (6815زه) من الاصناف
(5565ةاء) التالية : 1606080 , 1105160 , اال , 80100[ والتي توفر عدد
امثلة علي انشاء كائنات من الانواع اعلاه :
(( 01 )مم18 سعد - مز صماان 8ل
((” ع6 02008 ناه تعاصع “)اها معد - از اءطاهال
8010"”) *«ه1606218 سعد - وما »1662180
الشكل الذي تظهر عليه واجهة المستخدم بعد البرمجة :
لماذا تحتوي اسماء الكائنات السابقة علي حرف ( ؟؟؟ ولماذا لا يكون الاسم من دون هذا الحرف ؟؟
نستخدم فئتين لبرمجة واجهة المستخدم وهما 21/3.210/04زو [21/31.504/0108
سنستخدم كلمة فئة او مكتبة كتعريب لكلمة 2086م الانجليزية في كل فصول الكتاب ؛ كما
سنستخدم كلمة صنف كتعريب لكلمة 255 ؛ وكلمة كائن كتعريب لكلمة ممعزطه .
* عندما قدمت لغة الجافا برمجة واجهات المستخدم لأول مرة كانت كل الاصناف موجودة في مكتبة
او فئة تسمي +/برج وهذه الفئة تقوم بضبط اعدادت البرنامج تلقائيا حسب المنصة التي يتم تشغيل
البرنامج عليها ؛ هذه الاصناف الموجودة في هذه الفئة 3ج تنفع في بناء واجهات مستخدم بسيطة
ولكن لا تجدي نفعا في بناء واجهات مستخدم محترفة ومتميزة.
* مع ظهور النسخة الثائية من الجافا تم استبدال فئة +ييرج بفئة اكثر تميز وكفاءة هي فئة 5/108
والتي تعتمد علي انشاء الكائنات من دون الاعتماد علي المنصة التي يتم تشغيل البرنامج عليها .
لا تعتمد علي منصة التشغيل ) 86 والاشارة الي فئة ألبرج ب 0010008015 جاع تع /لا ل/621 1
او المكونات الثقيلة ( وذلك لانها تعتمد وتتعامل مع منصة التشغيل).
* ومن اجل التفريق بين اصناف فئة 8:ج واصناف فئة 5/108 يتم اضافة اللاحقة ( قبل اسم كل
صنف من اصناف فئة 50/108 .
* من الافضل التعرد علي البرمجة بواسطة مكتبة او فئة 5/108 (علي الرغم من دعم الجافا
- طريقة تصميم وترتيب ال881 1لا6 تعتبر من افضل الامئلة علي استخدام الوراثة والاصناف
لمات
ملاس
* الرسم اعلاه عبارة عن رسم هيكلي يوضح الاصناف المستخدمة في برمجة واجهات المستخدم.
والرسم التالي يوضح اصناف فئة 58/108
* أصناف البرمجة الرسومية تنقسم الي ثلاثة اقسام:
185565 00181063 او اصناف الحاويات مثل :1800164 ,ا10308 , 880706[ تقوم بأحتواء
* 35565 +6106 او الاصناف المساعدة مثل : 05100 50114,01016 رى6 1م68 , ©010١
* 6135565 0001000601 او اصناف المكونات مثل : 1801200 , ا8طهال , 176:051160 فهي
عبارة عن اصناف فرعية من الصنف 6000000801 .
« الصنف 0000008018 هو الأب لكل الاصناف المتستخدمة في برمجة واجهة المستخدم
ه الصنف 10000000804 عبارة عن صنف مجرد ولايمكن انشاء كائنات منه ولكن بدلا من
+( 0) 0م181 سعد 2 81 8110ل
* اصناف المحتوي هي عبارة عن اصناف تستخدم لاحتواء المكونات + , |0802 , 0ه 1/100
86 , 28006 , 800161 هي اصناف الاحتواء الخاصة بمكتبة 810/4
* بالنسبة لمكتبة 90/106 فأن اصناف الاحتواء هي , 15681008 , 600181022 , 001000601
تفصيل الاصناف :-
* 188006 هو عبارة عن نافذة غير محتواة في نافذة اخري ويستخدم لاحتواء بقية مكونات
واجهة المستخدم في الجافا.
ف 108108 هو عبارة عن نافذة منبثقة أو صندوق رسالة بست يستختم بصورة مؤقتة لادخال
معلومات من المستخدم او لعرض معلومات اضافية للمستخدم
* 1800161 هو عبارة عن صنف فرعي من الصنف 0016م ولابد من عمل امتداد منه
للتعامل معه .
* 108061 هو عبارة عن حاوية غير مرئية تستخدم لاحتواء مكونات البرمجة ويمكن ان يكون
* الاصناف المساعدة مثل 8004 , ©6010 , 1165م638 ليست اصناف فرعية من
الصنف.6000000601 وائما تستخدم لتنسيق والتحكم في مظهر الواجهات.
* الصنف 1165ام688 عبارة عن صنف مجرد ويستخدم في رسم الاشكال البسيطة.
* الصنف +6010 يستخدم في التحكم في الوان جميع مكونات الواجهات.
* الصنف 8004 يستخدم في تحديد نوع وحجم النص في الواجهات المختلفة .
* الصنف 0040/6165 يستخدم في الحصول علي خصائص الالوان الخاصة بمكونات
* الصنف 0100605700 يستخدم في التحكم في طول وعرض مكونات الواجهه.
* الصنف +1270010/130386 هو عبارة عن 104636866 يحدد الكائن المنشي منه طريقة
الاصناف المساعدة موجودة في فئة 27/2.21/4ز وذلك لان فئة 5/108 لم تستبدل كل اصناف هذه
* لكي نتمكن من تصميم واجهة مستخدم لابد من انشاء واحد من اثنين اما إطار او أبلت وذلك
لاحتواء مكونات الواجهه وفي هذا الكتاب سنتعرض للتعامل مع الإطارات فقط .
لكي نقوم بأنشاء اطار نستخدم الصنف 1888006 والذي نفصل تكوينه في الشكل التالي :
16168006 آه ممتاقما عط 56 // (باص وا( 56110231100+
عكمل صه 0م18 تداس // (ف )0 21310م610520 :5610861201+
مثل 1:
انشاء اطار عرضه 400 بكسل وطوله 300 بكسل وغير مرتبط باي مكون اخر وعند اغلاقه
يغلق البرنامج فورا ؛8؛ وعنوانه 5/5560 560108 57لا5 ؟؟؟
شرح المثال :
في السطر الاول نقوم بعمل استيراد للمكتبة او الفئة 27/2«.5108ز وعلامة النجمة في العبارة
في السطر الخامس نقوم بإنشاء كائن من الصنف 188006 ونرسل له القيمة الخاصة
بالعنوان والتي هي 5/5600 5603108 50057
في السطر السادس نقوم بتحديد ابعاد الاطار ونرسل لها اولا العرض وهو 400 ومن ثم نرسل
لها الطول وهو 300
في السطر السابع سنقوم بتحديد ما إذا كان هذا الاطار مرتبط بإطار او مكون اخر من
في السطر الثامن نحدد العملية التي تحدث عند اغلاق الاطار
في السطر التاسع نحدد ظهور الاطار من عدمه ونرسل له القيمة 6م لإظهار الاطارو
815 لإخفاء الاطار .
* المثال السابق يوضح لنا كيفية انشاء إاطار 8 ولكن ليس هناك معني لانشاء اطار فارغ
لذلك سانضيف مكون جديد عبارة عن زر للموافقة 501400 0
البرنامج بعد التعديل :-
م (0160") مم مهل سعد - مطل ممععمون 8
0167 )243 فسفع 9
شرح التعديل :
بعد انشاء الاطار وقبل تحديد الخصائص الخاصة بالاطار نقوم بإنشاء كائن من الصنف
ومن ثم نقوم باضافة الزر الي الأطار عن طريق استخدام الدالة 200 وذلك كالاتي :
8006_0806 << اسم الاطار
©0800 801100 << اسم الزر
لابد من التفريق بين اسم الزر والنص الذي يظهر علي الزر ؛؛ فأسم الزر هو اسم الكائن الذي