إعلان
دورة تطوير التطبيقات باستخدام لغة JavaScript في هذه الدورة ستتعلم لغة جافا سكريبت, استخدام مكتبة React.js, بناء API الموقع بواسطة Node.js, تطوير تطبيق جوال باستخدام React Native, و في نهاية الدورة ستتعلم تطوير تطبيق محادثة شبيه بتطبيق WhatsApp. تعلم الآن
دورة تطوير واجهات المستخدم في هذه الدورة ستتعلم لغة HTML و لغة CSS و لغة JavaScript. من ناحية التطبيق العملي ستتعلم طريقة بناء واجهة متجر إلكتروني مكون من ست صفحات, تحويل خمسة تصاميم PSD إلى صفحات ويب, بناء واجهة مستخدم تشبه موقع يوتيوب, بناء لوحة تحكم إحترافية. تعلم الآن
تطوير تطبيقات باستخدام لغة بايثون في هذه الدورة ستتعلم أساسيات البرمجة بلغة بايثون وصولاً إلى التعامل مع أشهر أطر العمل (Flask و Django) و ستتعلم كيف تبني متجر إلكتروني يمكن للمستخدمين البيع و الشراء من خلاله. تعلم الآن
دورة تطوير تطبيقات الويب باستخدام لغة PHP في هذه الدورة ستتعلم لغة PHP من الصفر, استخدام إطار العمل Laravel بشرح مفصّل و عملي, كيفية تطوير شبكة اجتماعية تشبه Instagram, بناء API لتطبيق جوال وفق أسلوب RESTful, تطوير موقع إعلانات مبوبة, تطوير نظام إدارة محتوى CMS كامل. تعلم الآن
دورة تطوير تطبيقات الويب باستخدام لغة Ruby في هذه الدورة ستتعلم البرمجة بلغة Ruby إنطلاقاً من أبسط المفاهيم وحتى بناء تطبيق حقيقي, إستخدام إطار العمل Ruby on Rails بشرح مفصّل و عملي, بناء تطبيق حقيقي عبارة عن شبكة اجتماعية تشبه تويتر, تطوير مجتمع الكتروني يشبه حسوب I/O. تعلم الآن
دورة علوم الحاسوب هذه الدورة معدة لتكون مدخل لعلوم الحاسوب و لغات البرمجة حيث ستتعرف فيها على أنظمة التشغيل و ستتعمق في نظام لينكس و في كيفية التعامل معه من خلال موجه الأوامر, بالإضافة إلى قواعد البيانات و أساسيات الشبكات و الخوادم و مبادئ الحماية والأمان في الويب. تعلم الآن

    Swing الكلاس JOptionPane

    مقدمة

    الكلاس JOptionPane يستخدم لإظهار نافذة خيارات (Option Pane) أمام للمستخدم لعدة أسباب:

    1. لتحذيره أو إعلامه بشيء ما.
    2. لسؤاله إذا كان موافقاً على أمر ما أم لا.
    3. ليطلب منه إدخال قيمة.

    الكلاس JOptionPane يوفر دوال كثيرة يمكن إستخدامها للحصول Message Dialog, Confirm Dialog و Input Dialog.


    مصطلحات تقنية

    المصطلح معناه
    Message Dialog عبارة عن نافذة منبثقة تستخدم لإعلام المستخدم بشيء ما.
    نحصل على Message Dialog بواسطة الدالة showMessageDialog().
    Confirm Dialog عبارة عن نافذة منبثقة تستخدم لسؤال المستخدم إذا كان موافقاً على شيء ما أم لا.
    نحصل على Confirm Dialog بواسطة الدالة showConfirmDialog().
    Input Dialog عبارة عن نافذة منبثقة تستخدم لجعل المستخدم يقوم بإدخال أو إختيار قيمة ما
    نحصل على Input Dialog بواسطة الدالة showInputDialog().

    معلومة تقنية

    الـ Option Pane عبارة عن Internal Frame لأنها عبارة عن نافذة تظهر بداخل النافذة التي تستدعى منها.


    بناؤه

    public class JOptionPane
    extends JComponent
    implements Accessible
    	

    ثوابت الكلاس JOptionPane

    الجدول التالي يحتوي على ثوابت الكلاس JOptionPane المخصصة لتحديد أيقونة الـ Option Pane.

    الثابت إستخدامه الأيقونة التي يظهرها
    ERROR_MESSAGE يظهر أيقونة تلفت نظر المستخدم إلى وجود خطأ ما.
    INFORMATION_MESSAGE يظهر أيقونة تلفت نظر المستخدم لقراءة معلومة ما.
    WARNING_MESSAGE يظهر أيقونة تلفت نظر المستخدم لوجود تحذير ما.
    QUESTION_MESSAGE يظهر أيقونة تلفت نظر المستخدم لسؤاله عن شيئاً ما.
    PLAIN_MESSAGE يستخدم لعدم إظهار أي أيقونة.

    الجدول التالي يحتوي على ثوابت الكلاس JOptionPane المخصصة لتحديد الأزرار التي ستوجد في الـ Option Pane و تحديداً في الـ Confirm Dialog.

    الثابت إستخدامه الأزرار التي يظهرها
    YES_NO_OPTION يستخدم لإظهار الأزرار Yes و No في الـ Option Pane.
    YES_NO_CANCEL_OPTION ييستخدم لإظهار الأزرار Yes و No و Cancel في الـ Option Pane.
    OK_CANCEL_OPTION يستخدم لإظهار الأزرار OK و Cancel في الـ Option Pane.

    دوال الكلاس JOptionPane

    الجدول التالي يحتوي على أهم الدوال الموجودة في الكلاس JOptionPane.

    الدالة مع تعريفها
    public static void showMessageDialog(Component parentComponent, Object message) تظهر Option Pane يعرض نافذة فيها رسالة أمام المستخدم.

    • مكان الباراميتر parentComponent نضع الـ Frame التي نريده أن يظهر بداخلها. أو نضع null لجعله يظهر في وسط شاشة المستخدم.
    • مكان الباراميتر message نضع نص النافذة التي ستظهر.
    public static void showMessageDialog(Component parentComponent, Object message, String title, int messageType) تظهر Option Pane يعرض نافذة فيها رسالة أمام المستخدم لها عنوان و أيقونة من الأيقونات المجهزة في جافا.

    • مكان الباراميتر parentComponent نضع الـ Frame التي نريده أن يظهر بداخلها. أو نضع null لجعله يظهر في وسط شاشة المستخدم.
    • مكان الباراميتر message نضع نص النافذة التي ستظهر.
    • مكان الباراميتر title نضع نص يمثل عنوان النافذة التي ستظهر.
    • مكان الباراميتر messageType نضع إحدى الثوابت الموجودة في الكلاس JOptionPane المخصصة لإظهار أيقونة في الـ Option Pane.
    public static void showMessageDialog(Component parentComponent, Object message, String title, int messageType, Icon icon) تظهر Option Pane يعرض نافذة فيها رسالة أمام المستخدم لها عنوان و أيقونة غير موجودة في جافا.

    • مكان الباراميتر parentComponent نضع الـ Frame التي نريده أن يظهر بداخلها. أو نضع null لجعله يظهر في وسط شاشة المستخدم.
    • مكان الباراميتر message نضع نص النافذة التي ستظهر.
    • مكان الباراميتر title نضع نص يمثل عنوان النافذة التي ستظهر.
    • مكان الباراميتر messageType نضع إحدى الثوابت الموجودة في الكلاس JOptionPane المخصصة لإظهار أيقونة في الـ Option Pane.
    • مكان الباراميتر icon نضع كائن من الكلاس Icon يحتوي على رابط الأيقونة التي ستظهر.
    public static int showConfirmDialog(Component parentComponent, Object message) تظهر Option Pane يعرض نافذة أمام المستخدم فيها نص الذي تم تمريره لها و ثلاث خيارات Yes, No و Cancel.
    إضافة إلى ذلك تضع النص ( Select an Option ) كعنوان للنافذة.

    • مكان الباراميتر parentComponent نضع الـ Frame التي نريده أن يظهر بداخلها. أو نضع null لجعله يظهر في وسط شاشة المستخدم.
    • مكان الباراميتر message نضع نص النافذة التي ستظهر.
    public static int showConfirmDialog(Component parentComponent, Object message, String title, int optionType) تظهر Option Pane يعرض نافذة أمام المستخدم فيها النص الذي تم تمريره لها و الخيارات التي تم تحديدها.

    • مكان الباراميتر parentComponent نضع الـ Frame التي نريده أن يظهر بداخلها. أو نضع null لجعله يظهر في وسط شاشة المستخدم.
    • مكان الباراميتر message نضع نص النافذة التي ستظهر.
    • مكان الباراميتر title نضع نص يمثل عنوان النافذة التي ستظهر.
    • مكان الباراميتر optionType نضع إحدى الثوابت الموجودة في الكلاس JOptionPane المخصصة لتحديد الخيارات التي ستظهر في الـ Option Pane.
    public static int showConfirmDialog(Component parentComponent, Object message, String title, int optionType, int messageType) تظهر Option Pane يعرض نافذة أمام المستخدم فيها النص الذي تم تمريره لها و الخيارات و الأيقونة من الأيقونات المجهزة في جافا.

    • مكان الباراميتر parentComponent نضع الـ Frame التي نريده أن يظهر بداخلها. أو نضع null لجعله يظهر في وسط شاشة المستخدم.
    • مكان الباراميتر message نضع نص النافذة التي ستظهر.
    • مكان الباراميتر title نضع نص يمثل عنوان النافذة التي ستظهر.
    • مكان الباراميتر optionType نضع إحدى الثوابت الموجودة في الكلاس JOptionPane المخصصة لتحديد الخيارات التي ستظهر في الـ Option Pane.
    • مكان الباراميتر messageType نضع إحدى الثوابت الموجودة في الكلاس JOptionPane المخصصة لإظهار أيقونة في الـ Option Pane.
    public static int showConfirmDialog(Component parentComponent, Object message, String title, int optionType, int messageType, Icon icon) تظهر Option Pane يعرض نافذة أمام المستخدم فيها النص الذي تم تمريره لها و الخيارات و الأيقونة التي تم تحديدها.

    • مكان الباراميتر parentComponent نضع الـ Frame التي نريده أن يظهر بداخلها. أو نضع null لجعله يظهر في وسط شاشة المستخدم.
    • مكان الباراميتر message نضع نص النافذة التي ستظهر.
    • مكان الباراميتر title نضع نص يمثل عنوان النافذة التي ستظهر.
    • مكان الباراميتر optionType نضع إحدى الثوابت الموجودة في الكلاس JOptionPane المخصصة لتحديد الخيارات التي ستظهر في الـ Option Pane.
    • مكان الباراميتر messageType نضع إحدى الثوابت الموجودة في الكلاس JOptionPane المخصصة لإظهار أيقونة في الـ Option Pane.
    • مكان الباراميتر icon نضع كائن من الكلاس Icon يحتوي على رابط الأيقونة التي ستظهر.
    public static String showInputDialog(Object message) تظهر Option Pane يعرض نافذة أمام المستخدم فيها نص الذي تم تمريره لها و مربع نص و خياران Ok و Cancel.
    إضافة إلى ذلك تضع النص ( Input ) كعنوان للنافذة.

    مكان الباراميتر message نضع نص النافذة التي ستظهر.
    public static String showInputDialog(Object message, Object initialSelectionValue) تظهر Option Pane يعرض نافذة أمام المستخدم فيها نص الذي تم تمريره لها و مربع نص يحتوي على قيمة أولية و خياران Ok و Cancel.
    إضافة إلى ذلك تضع النص ( Input ) كعنوان للنافذة.

    • مكان الباراميتر message نضع نص النافذة التي ستظهر.
    • مكان الباراميتر initialSelectionValue نضع قيمة إفتراضية في مربع النص.
    public static String showInputDialog(Component parentComponent, Object message) تظهر Option Pane يعرض نافذة أمام المستخدم فيها نص الذي تم تمريره لها و مربع نص و خياران Ok و Cancel.
    إضافة إلى ذلك تضع النص ( Input ) كعنوان للنافذة.

    • مكان الباراميتر parentComponent نضع الـ Frame التي نريده أن يظهر بداخلها. أو نضع null لجعله يظهر في وسط شاشة المستخدم.
    • مكان الباراميتر message نضع نص النافذة التي ستظهر.
    public static String showInputDialog(Component parentComponent, Object message, Object initialSelectionValue) تظهر Option Pane يعرض نافذة أمام المستخدم فيها نص الذي تم تمريره لها و مربع نص يحتوي على قيمة أولية و خياران Ok و Cancel.
    إضافة إلى ذلك تضع النص ( Input ) كعنوان للنافذة.

    • مكان الباراميتر parentComponent نضع الـ Frame التي نريده أن يظهر بداخلها. أو نضع null لجعله يظهر في وسط شاشة المستخدم.
    • مكان الباراميتر message نضع نص النافذة التي ستظهر.
    • مكان الباراميتر initialSelectionValue نضع قيمة إفتراضية في مربع النص.
    public static String showInputDialog(Component parentComponent, Object message, String title, int messageType) تظهر Option Pane يعرض نافذة أمام المستخدم فيها نص الذي تم تمريره لها و مربع نص يحتوي على قيمة أولية و خياران Ok و Cancel.

    • مكان الباراميتر parentComponent نضع الـ Frame التي نريده أن يظهر بداخلها. أو نضع null لجعله يظهر في وسط شاشة المستخدم.
    • مكان الباراميتر message نضع نص النافذة التي ستظهر.
    • مكان الباراميتر title نضع نص يمثل عنوان النافذة التي ستظهر.
    • مكان الباراميتر messageType نضع إحدى الثوابت الموجودة في الكلاس JOptionPane المخصصة لإظهار أيقونة في الـ Option Pane.

    أشكال الـ JOptionPane


    JOptionPane.showMessageDialog(null, "This is a plain message", "Plain Message", JOptionPane.PLAIN_MESSAGE);
    	


    JOptionPane.showMessageDialog(null, "This is an information message", "Information Message", JOptionPane.INFORMATION_MESSAGE);
    	


    JOptionPane.showMessageDialog(null, "This is a warning message", "Warning Message", JOptionPane.WARNING_MESSAGE);
    	


    JOptionPane.showMessageDialog(null, "This is an error message", "Error Message", JOptionPane.ERROR_MESSAGE);
    	


    JOptionPane.showMessageDialog(null, "This is a question message", "Quesiton Message", JOptionPane.QUESTION_MESSAGE);
    	


    JOptionPane.showConfirmDialog(null,
                                  "You are going to delete you history.\nAre you sure?",
                                  "Delete History",
                                  JOptionPane.YES_NO_CANCEL_OPTION,
                                  JOptionPane.WARNING_MESSAGE);
    	


    JOptionPane.showConfirmDialog(null,
                                  "Do you like programming?",
                                  "Quesiton",
                                  JOptionPane.YES_NO_OPTION,
                                  JOptionPane.QUESTION_MESSAGE);
    	


    JOptionPane.showConfirmDialog(null,
                                  "Close The program now?",
                                  "Warning",
                                  JOptionPane.OK_CANCEL_OPTION,
                                  JOptionPane.WARNING_MESSAGE);
    	


    JOptionPane.showInputDialog(null, "Enter value:", "", JOptionPane.PLAIN_MESSAGE);

    Object[] values = {"java", "css", "c++", "android"};
    JOptionPane.showInputDialog(null, "Select value", "", JOptionPane.PLAIN_MESSAGE, null, values, values[0]);
    	

    أمثلة شاملة


    المثال الأول

    المثال التالي يعلمك طريقة إظهار Message Dialog. كل زر يظهر Message Dialog مختلف.

    طريقة إنشاء JOptionPane يمثل message dialog في جافا

    شاهد المثال »



    المثال الثاني

    المثال التالي يعلمك طريقة إظهار Confirm Dialog. كل زر يظهر Confirm Dialog مختلف.
    إضافةً إلى ذلك ستتعلم كيف تنفذ أوامر معينة بناءاً على كل زر موجود في الـ Confirm Dialog في حال قام المستخدم بالنقر عليه.

    طريقة إضافة JOptionPane يمثل confirm dialog في جافا

    شاهد المثال »



    المثال الثالث

    المثال التالي يعلمك طريقة إظهار Input Dialog.
    عند النقر على الزر Search سيظهر Input Dialog تطلب من المستخدم إدخال قيمة في Text Field.
    عند النقر على الزر Select سيظهر Input Dialog تطلب من المستخدم إختيار قيمة من Combo Box.

    طريقة إضافة JOptionPane يمثل input dialog في جافا

    شاهد المثال »

    إعلان

    Eqla3Tech.com

    شروحات مكتوبة حول لغات البرمجة و تقنية المعلومات باللغة العربية مقدمة من إقلاع تك.

    لغة جافا لغة ++C قواعد البيانات نظام ويندوز نظام لينكس الشبكات تقنية المعلومات الأمن السيبراني

    الدورات

    أدوات مساعدة

    الأقسام

    دورات
    مقالات أسئلة مشاريع كتب