الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

غلق فورم

بدأه m.javest في 24 نوفمبر 2012 · 7 رد · 738 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

اذا ممكن فكرة حول كيفية غلق فورم مع انه اثناء التنفيذ يوجد اكثر من فورم والعمل بـ System.exit(0);

يؤدي الى اغلاق كل فورم مفتوح

#2

من جهتي ، يمكنك اختيار الفورم الاساسي وجعله Full Screen والاخرى 'فورم ثانوية'

آمل أنني فهمت قصدك

1

556891961.gif

I am learning from you

it is the programmer eye

#3

لإغلاق فورم وابقاء اي فورم اخر يعمل استخدم الدالة التالية ضمن الفورم الذي تريد اغلاقه

setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);

بعدها اذا نقرت على زر الاغلاق الخاص بالفورم سيغلق الفورم الحالي فقط ويبقي البرنامج واي فورم اخر يعمل

أيضا طريقة اخرى اذا اردت ان يتم الاغلاق ضمن حدث معين كالنقر على زر Button استخدم الدالة الدالية للفورم الذي تريد اغلاقه

setVisible(false);

هذا ما استخدمه في برامجي وربما شخص اخر لديه حلول افضل فيفيدنا جميعا

1
#4

استاذ h.shehari بارك الله فيك على الإفادة

واستاذ المشاكس ممكن توضح اي خاصية يتم فيها التغيير الى full screen ؟؟

#5

هذه الدالة تجعل الفورم full Screen

setExtendedState(JFrame.MAXIMIZED_BOTH);

وهذه الدالة تمنع المستخدم من تغيير حجم الفورم

setResizable(false);
1
#6

عند الضغط على علامة (x) أعلى يمين النافذة, تقوم الجافا بشكل افتراضي بغلق الــ Frame و قتل الــ Proccess المسؤول عن العملية.

إذا كنتَ تُريد إغلاق النافذة الحالية دون التأثير على البقية فيمكنك استخدام الدالة dispose هكذا :

frame.dispose();

اقتباس
لإغلاق فورم وابقاء اي فورم اخر يعمل استخدم الدالة التالية ضمن الفورم الذي تريد اغلاقه

setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);

بعدها اذا نقرت على زر الاغلاق الخاص بالفورم سيغلق الفورم الحالي فقط ويبقي البرنامج واي فورم اخر يعمل

تمرير الوسيط HIDE_ON_CLOSE لا يعني أبداً إغلاق النافذة الحالية و إنما إخفاؤها فقط :)

لإخفاء و إغلاق النافذة قم بتمرير الوسيط DISPOSE_ON_CLOSE.

اقتباس
أيضا طريقة اخرى اذا اردت ان يتم الاغلاق ضمن حدث معين كالنقر على زر Button استخدم الدالة الدالية للفورم الذي تريد اغلاقه

setVisible(false);

setVisible لا تُغلق الــ Frame و إنما تُظهره أو تُخفيه ..

تمرير القيمة false إلى الدالة setVisible يعني أن الــ Frame سيتم إخفاؤه لكنه يبقى قيد التشغيل و يستهلك مساحة من الذاكرة.

بالتوفيق.

4
#7

السلام عليكم

استخدام HIDE_ON_CLOSE يبقى الفورم في الذاكرة

الافضل استخدام

setDefaultCloseOperation(DISPOSE_ON_CLOSE);
1
#8
h.shehari كتب:

هذه الدالة تجعل الفورم full Screen

setExtendedState(JFrame.MAXIMIZED_BOTH);

وهذه الدالة تمنع المستخدم من تغيير حجم الفورم

setResizable(false);

السلام عليكم

استخدام setResizable يبطل عمل setExtendedState

تستطيع تحديد الحجم باستخدام setSize ومن ثم استدعاء الامر setExtendedState

1

مواضيع مشابهة