دروس كمبيوتر وصيانة دروس حاسب دروس مجلة  درس نيوك phpnuke الدروس دروس مسنجر MSN - yahoo - Gmail دروس منتديات vBulletin دروس الجوالات والهواتف دروس السي بنل cpanel دروس اكسس access دروس بيونت شوب برو - point shop pro دروس برمجة php - mysql دروس برامج منوعة software دروس ثري دي ماكس 3D max دروس جافا سكريبت JavaScript دروس دريم ويفر DreamWeaver دروس شبكات Networks دروس سويش - swish دروس فلاش - flash دروس فيجوال بيسك Visual Basic دروس فرونت بيج - frontpage دروس فوتوشوب photoshop دروس هكر hacker crack virus
توبيكات رمضان | رسايل رمضان | ثيمات رمضان | طبخات رمضانية | توبيكات رمضانية | صور عن رمضان | دعاء رمضان
احصائيات سريعة
اقسام على الموقع
دروس في أنظمة التشغيل | ماي سكيول - MySQL | لفيجوال بيسك - Visual Basic | المات لاب Matlab | اللينكس و اليونكس | الاسمبلي - ASSEMBLY | الاوتلوك - Outlook | البرمجة تحت اللنكس -Linux Programming | البرمجة تحت وندوز بواسطة دوال ال win API | البرمجة في بيئة الدوت نت .Net | التصمبم والرسوم | الدلفي - Delphi | الجافا - Java | السي - C | الصوت و الصورة | الوورد - Word | القسم العام للأوفيس | الكوبول - COBOL | control panel-ftp | اوراكل - Oracle | اكسل - Excel | تحميل الملفات | برامج متنوعة | برامج التصفح | برامج الحماية | برامج إنترنت | تعرّف على الويب | بوربوينت - Power Point | images | دروس : كمبيوتر وصيانة | دروس مجلة نيوك phpnuke | دروس مسنجر MSN - yahoo - Gmail | دروس منتديات vBulletin | دروس الجوالات والهواتف | دروس السي بنل cpanel | دروس اكسس access | دروس بيونت شوب برو - point shop pro | دروس برمجة php - mysql | دروس برامج منوعة software | دروس ثري دي ماكس 3D max | دروس تطوير المواقع والمنتديات | دروس جافا سكريبت JavaScript | دروس دريم ويفر DreamWeaver | دروس شبكات Networks | دروس سويش - swish | دروس فلاش - flash | دروس فلاش mx | دروس فى نظام الوندوز WINDOWS | دروس فىالباسكال - Pascal | دروس فيجوال بيسك Visual Basic | دروس فرونت بيج - frontpage | دروس فوتوشوب photoshop | دروس هكر hacker crack virus | سي ++ | سي شارب - #C | فيجوال سي ++ - ++ Visual C | قسم البرمجة العام | دروس فى لغة HTML
البحث في المواد

اكثر المحتويات زيارة
الدوال في الاكسل (6,381 مشاهده)
ربط قاعدة بيانات أكسس (MS Access) مع برنامج الفيجوال بيسك بطريقة(ODBC) (4,139 مشاهده)
الدرس الثالث : بعض تطبيقات الدوال في اكسل (3,091 مشاهده)
تعريف الاستعلام وطريقة عرضه في آكسس، أنواع الاستعلامات، نافذة تحديد الاستعلام! (2,403 مشاهده)
الدرس الثاني: بعض الحيل لتسهيل برنامج اكسل (2,302 مشاهده)
شرح طريقة استعمال الأوتلوك مع بريد الهوتميل (2,192 مشاهده)
تغيير لغة واجهة التطبيق من عربي الى انجليزي وبالعكس لـ Windows-based applications (2,159 مشاهده)
أنواع العلاقات وطريقة الربط بين الجداول. (1,930 مشاهده)
مقدمة عامة حول الاكسل وحيل خاصة بالاكسل (1,756 مشاهده)
أنشئ قاعدة بياناتك التي ستستند إليها في تعلم طريقة ربط الجداول والاستعلامات. (1,727 مشاهده)
الدرس الأول : عمل شريحة في البوربوينت (1,576 مشاهده)
دروس في الأوفيس الأكسس - Access0- (1,527 مشاهده)
كيفية حل مشاكل الانترنت اكسبلور Internet Explorer (1,490 مشاهده)
دورة الأكسس: الدرس السادس : منوعات في أكسيس . (1,469 مشاهده)
اضافه صوت ونص لخلفيه في باور بوينت (1,359 مشاهده)
شرح طريقة التجميع Grouping في برنامج الاكسل (1,322 مشاهده)
التعرف على مكونات الكمبيوتر (1,286 مشاهده)
دورة الأكسس: الدرس السادس : منوعات في أكسيس .0--- (1,276 مشاهده)
برنامج Windows Movie Maker لتكوين أفلام (1,265 مشاهده)
درس تعريب المجلة (1,247 مشاهده)
مقدمة في ربط قواعد البيانات داخل بيئة الـ .NET باستخدام الـ VB.NET (1,219 مشاهده)
كيف تجعل برنامجك أكثر تألقا وجمالا باستخدام أداة Active Skin (1,215 مشاهده)
ما هو المات لاب MATLAB؟ (1,171 مشاهده)
مقدمة عن لغة البيسك (1,129 مشاهده)
الفيجوال بيسك - مقدمة (1,090 مشاهده)
جديد مواد مع عشوائي
التحويل التلقائي للحروف ل- ل- ه إلى اسم الجلالة0---- (791 مشاهده)
النسبة المئوية لا تظهر بالخط العربي & الشدة وألف المد في لفظ الجلالة0---النسبة المئوية لا تظهر بالخط العربي & الشدة وألف المد في لفظ الجلالة0--- (491 مشاهده)
ضبط خيارات اللغة فى الـ Microsoft Word0--- (551 مشاهده)
استخدام لوحة المفاتيح في الـ Word0---- (720 مشاهده)
إضافة كلمة سر إلي ملفات الورد دون استخدام برامج0--- (791 مشاهده)
دمج المراسلات0-- (438 مشاهده)
وضع صورة كخلفية للنص0-- (567 مشاهده)
السماح للمستخدمين بتعديل أجزاء من ملف وورد محمي (Word2003)0--- (388 مشاهده)
كتابة الأرقام الكسرية ورموز المعادلات0-- (636 مشاهده)
درس كامل عن الدمج السهل من لوحة المفاتيح ف0-ي برنامج الـ Word (401 مشاهده)
دورة الأكسس: الدرس السادس : منوعات في أكسيس .0--- (1,276 مشاهده)
دورة الأكسيس : الدرس الرابع : العلاقات0---- (667 مشاهده)
أساسيات في Access0--0 (460 مشاهده)
تصميم تقرير لطباعة البيانات0---- (496 مشاهده)
تصميم نموذج استعراض البيانات‏0--تصميم نموذج استعراض البيانات‏0-- (481 مشاهده)
تصميم نموذج إدخال‎ ‎البيانات0--- (573 مشاهده)
إنشاء قوائم خاصة باستخدام الماكرو(1)0-- (444 مشاهده)
خطوات إنشاء الماكرو في تذييل النموذج (2)0-- (376 مشاهده)
خطوات إنشاء الماكرو في تذييل النموذج (1)0- (331 مشاهده)
استعلامات SQL في Access - تعديل الجداول وإضافة الحقول0- (466 مشاهده)
استعلامات SQL في Access - تحديث البيانات الجدولية0-- (421 مشاهده)
الاستعلامات الإجرائية -4 (استعلام الحذف)0--- (218 مشاهده)
الاستعلامات الإجرائية -2 (استعلام الإلحاق)0--- (302 مشاهده)
تصميم تقرير لطباعة الإجمالي0--- (329 مشاهده)
استعلامات التحديد Select Query مع أمثله (1)0--- (434 مشاهده)
اعلانات في الموقع على جميع الصفحات

خلف كواليس JOptionPane

مستوى الدرس :مبتدئ


 



خلف كواليس JOptionPane:



 



من ضمن أدوات Swing المتوفرة بـ J2SE كلاس مميز لانشاء Panel لتكون على شكل نافذة منبثقة (Popup window). تستطيع استخدام النافذة لإظهار الرسائل للمستخدم و جمع المعلومات المطلوبه منه. الـ Panel ينقسم إلى أربع أقسام رئيسية و هي على الشكل التالي: قسم خاص للايقونة و قسم لاظهار الرسائل و قسم لجمع المعلومات و اخيراً قسم للأزرار. و تستطيع على الأقل استخدام قسم خاص بالرسالة و قسم الأزرار.



 



 



    



 



قسم الأيقونه خاص لإظهار الـ javax.swing.Icon. يمثل شكل الأيقونة محتوى الرسالة الظاهره للمستخدم و توجد هناك عدة أشكال جاهزه للايقونة من خلال الـ Java Look And Feel و تستطيع التعامل معها من خلال الخصائص التالية:



 



·          OptionPane.informationIcon



·          OptionPane.warningIcon



·          OptionPane.errorIcon



·          OptionPane.questionIcon



 



لا يجب على المستخدم تغيير الخصائص بشكل يدوي عن طريق الـ



UIManager.put(property name, new resource). بل تستطيع عمل ذلك بتعريف الجزء المخصص للرسالة من خلال الـ JOptionPane:



 



·          JOptionPane.PLAIN_MESSAGE



·          JOptionPane.INFORMATION_MESSAGE



·          JOptionPane.WARNING_MESSAGE



·          JOptionPane.ERROR_MESSAGE



·          JOptionPane.QUESTION_MESSAGE



 



الـ Plain عبارة عن مساحة فارغه أما البقية فتستخدم الايقونات الافتراضية للـ Java Look And Feel:



 



 



    



 



القسم الثاني من الـ JOptionPane هو قسم الرسائل التي تظهر للمستخدم. و تستطيع استعراض اي عدد من الـ Objects بالقسم و سوف يتم عرضه كرسالة للمستخدمين.



القسم التالي هو قسم ادخال المعلومات المطلوبة من المستخدم، و باستخدام هذا القسم تستطيع استخدام الـ JTextField أو JComboBox أو JList لعرض المعلومات للمستخدم و الاختيار من بينها.



القسم الأخير هو قسم الأزرار و هو قسم خاص لعرض الأزرار مثل Yes/No. و بالضغط على أحد الأزرار ينتهي عمل الـ JOptionPane و يوجد خيارات افتراضية لهذا القسم (مثل القسم الخاص بالأيقونات،كـ OptionPane.yesButtonText). و تستطيع ايضاً انتاج أزرار اخرى لاستخدامها أو الغاء هذه الخاصية بالـ JOptionPane. و تستطيع كذلك استخدام لغتك الأم لتسمية الأزرار باسماء لغات اخرى مثل "موافق/غير موافق".



 



الخصائص المتوفرة بشكل افتراضي لهذا القسم كتالي:



 



·          DEFAULT_OPTION



·          YES_NO_OPTION



·          YES_NO_CANCEL_OPTION



·          OK_CANCEL_OPTION



 



الخاصية الافتراضية للـ JOptionPane هو الـ OK button.



 



 



استخدام JOptionPane:



 



الـ JOptionPane يحتوى على سبع من الـ constructors. كل واحد منها يرجع أداه لتستخدمها في كل مكان. أيضاً تستطيع إنشاء أدوات لتستخدمها بشكل افتراضي من خلال الـ JDialog و الـ JInternalFrame. توجد هناك ثمانية طرق لعرض الـ JOptionPane من خلال الـ JDialog أو الـ JInternalFrame:



 



·          show[Internal]MessageDialog



·          show[Internal]ConfirmDialog



·          show[Internal]InputDialog



·          show[Internal]OptionDialog



 



خيار الـ Internal لعرض الـ JOptionPane بداخل الـ JInternalFrame. أما الخيار الاخر فهو للـ JDialog.



 



الـ Message Dialog لعرض رسالة للمستخدم للموافقة عليها عبر الضغط على الزر – لا تستطيع اعادة اي قيمة –. تستطيع استخدام هذه الخاصية بالكود التالي:



 



JOptionPane.showMessageDialog(component, "Hello, World");



 



 





 



النظام سوف يقوم بعرض الـ MessageDialog بوسط الشاشة فوق الـ component.



 



توجد هناك طريقتين لعرض المعلومات على المستخدم و تستطيع أيضاً تغيير عنوان النافذة و نوع الرسالة و تخصيص شكل الأيقونة التي سوف تظهر.



 



·          showMessageDialog(Component parentComponent,



Object message,



String title,



int messageType)



·          showMessageDialog(Component parentComponent,



Object message,



String title,



int messageType,



Icon icon)



 



و توجد هناك اربع طرق لعرض نوافذ الموافقة:



 



·          showConfirmDialog(Component parentComponent, Object message)



·          showConfirmDialog(Component parentComponent,



Object message,



String title,



int optionType)



·          showConfirmDialog(Component parentComponent,



Object message,



String title,



int optionType,



int messageType)



·          showConfirmDialog(Component parentComponent, Object message,



String title, int optionType,



int messageType, Icon icon)



 



أسهل طريقة لعرض نافذة للسؤال (مع عدم تغيير الخصائص) هي:



 



JOptionPane.showConfirmDialog(component, "Lunch?");



 



 





 



اذا كانت الخصائص الافتراضية لا تعجبك فتستطيع تغييرها بكل سهولة مع الـ JOptionPane.



 



بعكس الـ MessageDialog، تستطيع من خلال الـ ConfirmDialog استرجاع القيم المطلوبة من المستخدم و تستطيع معرفة الزر الذي قام المستخدم بالضغط عليه. الـ ConfirmDialog يقوم باعادة قيم عددية (integer) عن طريق أحد الثوابت التالية من الـ JOptionPane:



 



·          CANCEL_OPTION



·          CLOSED_OPTION



·          NO_OPTION



·          OK_OPTION



·          YES_OPTION



 



بالمثال التالي تستطيع معرفة الزر الذي قام المستخدم بالضغط عليه:



 



int returnValue = JOptionPane.showConfirmDialog(component, "Lunch?");



String message = null;



if(returnValue == JOptionPane.YES_OPTION) {



    message = "Yes";



}



else if(returnValue == JOptionPane.NO_OPTION) {



    message = "No";



}



else if(returnValue == JOptionPane.CANCEL_OPTION) {



    message = "Cancel";



}



else if(returnValue == JOptionPane.CLOSED_OPTION) {



    message = "Closed";



}



System.out.println("User selected: " + message);



 



و توجد هناك ست طرق لعرض نوافذ لادخال البيانات InputDialog (خمسة طرق لاعادة الـ String):



 



·          showInputDialog(Object message)



·          showInputDialog(Object message, Object initialSelectionValue)



·          showInputDialog(Component parentComponent, Object message)



·          showInputDialog(Component parentComponent, Object message, Object initialSelectionValue)



·          showInputDialog(Component parentComponent ,Object message, String title,int messageType)



 



و اخيراً طريقة لاعادة قيم الـ Object:



 



·          showInputDialog(Component parentComponent,



Object message,



String title,



int messageType,



Icon icon,



Object[] selectionValues,



Object initialSelectionValue)



 



التعديل البسيط الذي حصل هو وجود مكان لادخال البيانات و أزرار للموافقة و الالغاء.



 



String value = JOptionPane.showInputDialog("Name");



 



 





 



كما فعلنا سابقاً، تستطيع التعديل على الأيقونة و العنوان و محتوى الرسالة. أما الأزرار فهي ثابتة لا تتغير و تستطيع ايضاً اضافة نص جاهزاً بالـ text field.



بالنسبة للطريقة الأخيرة للـ InputDialog فهي مميزة عن الطريق الأخرى. و هذا عن طريق استخدام مصفوفة (Array). بالمثال التالي نستطيع إيضاح ذلك:



 



String smallList[] = {



    "Sunday",



    "Monday",



    "Tuesday",



    "Wednesday",



    "Thursday",



    "Friday",



    "Saturday"



};



String value =



    (String)JOptionPane.showInputDialog(



        component,



        "Which Day?",



        "Day",



        JOptionPane.QUESTION_MESSAGE,



        null, // Use default icon



        smallList,



        smallList[smallList.length-1]);



System.out.println("Day: " + value);



 



 





 



لاستخدام مجموعة (List) أكبر – الكود يشبه الكود السابق – ، هنا مجموعة (List) لخصائص النظام:



 



Object largeList[] = System.getProperties().keySet().toArray();



String value =



    (String)JOptionPane.showInputDialog(



        component,



        "Which Property?",



        "Property",



        JOptionPane.QUESTION_MESSAGE,



        null,



        largeList,



        largeList[largeList.length-1]);



System.out.println("Property: " + value);



 



 



 



 



اخيراً، النافذة التي تشمل الجميع، showOptionDialog و التي لها منهج واحد فقط (Method):



 



·          showOptionDialog(Component parentComponent,



Object message,



String title,



درس خلف كواليس JOptionPane

أضف هذه المادة في موقعك:
مواد مشابهة:
 لكل مبتدئ في الجافا- لكل مبتدئ في الجافا-
لكل مبتدئ في الجافا-
(مرات المشاهدة: 194 مرات)
ما الفرق بين Java و JavaScript ما الفرق بين Java و JavaScript
ما الفرق بين Java و JavaScript
(مرات المشاهدة: 213 مرات)
(17) أوامر التحكّم - الجمل الشرطية (17) أوامر التحكّم - الجمل الشرطية
(17) أوامر التحكّم - الجمل الشرطية
(مرات المشاهدة: 204 مرات)
اظهار الجداول من الجهه اليمنى (JArabicTable)- اظهار الجداول من الجهه اليمنى (JArabicTable)-
اظهار الجداول من الجهه اليمنى (JArabicTable)-
(مرات المشاهدة: 29 مرات)
ماهي حزم الجافا؟ ماهي حزم الجافا؟
ماهي حزم الجافا؟
(مرات المشاهدة: 98 مرات)
(3) البرمجة بالكائنات الشيئية (3) البرمجة بالكائنات الشيئية
(3) البرمجة بالكائنات الشيئية
(مرات المشاهدة: 113 مرات)
مقدمة عن لغة الجـافـا وبيئة التشغيل |[( الجزء الأول )]| مقدمة عن لغة الجـافـا وبيئة التشغيل |[( الجزء الأول )]|
مقدمة عن لغة الجـافـا وبيئة التشغيل |[( الجزء الأول )]|
(مرات المشاهدة: 131 مرات)
مقدمه للغة الجافا: مقدمه للغة الجافا:
مقدمه للغة الجافا:
(مرات المشاهدة: 257 مرات)
المصفوفة المتناثرة Sparse Matrix المصفوفة المتناثرة Sparse Matrix
المصفوفة المتناثرة Sparse Matrix
(مرات المشاهدة: 110 مرات)
المصفوفة المتناثرة Sparse Matrix- المصفوفة المتناثرة Sparse Matrix-
المصفوفة المتناثرة Sparse Matrix-
(مرات المشاهدة: 51 مرات)
fot
جميع الحقوق محفوظة :Copyright © All rights reserved