الكلاس GroupLayout
الكلاس GroupLayout – الكلاس GroupLayout
الكلاس GroupLayout – الكلاس GroupLayout
الكلاس GroupLayout – الكلاس GroupLayout
الكلاس GroupLayout – الكلاس GroupLayout
المناهج السعوديةالكلاس GroupLayout – الكلاس GroupLayout
مقدمة
الكلاس GroupLayout يستخدم لترتيب الأشياء التي نضيفها ضمن مجموعات.
كل مجموعة يتم وضعها تكون في الأساس عبارة عن كائن من أحد الكلاسات التي ترث من الكلاس Group.
إنتبه: هنا سيتوجب عليك تحديد تسلسل جميع الأشياء التي أضفتها في المجموعة أفقياً و عمودياً.
و في حال لم تحدد تسلسل جميع الأشياء التي أضفتها أفقياً و عامودياً فإنه سيتم رمي الإستثناء IllegalArgumentException.
بناؤه
- publicclass GroupLayout
- extends Object
- implements LayoutManager2
الكلاس GroupLayout يحتوي على ثلاث كلاسات بداخله تم تصميمهم لتحديد طريقة ترتيب عناصر كل مجموعة. الكلاسات هم:
- الكلاس SequentialGroup يرث من الكلاس Group, و يستخدم لترتيبب الأشياء التي نضعها في المجموعة وراء بعضها البعض.
- الكلاس ParallelGroup يرث من الكلاس Group, و يستخدم لترتيبب الأشياء التي نضعها في المجموعة بشكل متوازي أفقياً أو عامودياً.
- الكلاس الثابت Alignment يحتوي على الثوابت ( BASELINE, CENTER, LEADING, TRAILING ) و التي تستخدم لتحديد طريقة إصطفاف الأشياء التي يتم وضعها في المجموعة.
ثوابت الكلاس GroupLayout
الجدول التالي يحتوي على ثوابت الكلاس GroupLayout.
الثابت | إستخدامه |
---|---|
DEFAULT_SIZE | يستخدم لتحديد الحجم الإفتراضي للأشياء أو الفراغ بينهم. |
PREFERRED_SIZE | يستخدم لتحديد الحجم المفضل للأشياء أو الفراغ بينهم. |
كونستركتورات الكلاس GroupLayout
الجدول التالي يحتوي على كونستركتورات الكلاس GroupLayout.
الكونستركتور مع تعريفه | |
---|---|
1 | publicGroupLayout(Container host)يرتب الأشياء التي نضيفها في النافذة أو الحاوية كمجموعة واحدة. مكان الباراميتر host نضع النافذة أو الحاوية التي سيتم وضع المجموعة فيها.يرمي الإستثناء IllegalArgumentException في حال تم وضع null مكان الباراميتر host. |
دوال الكلاس GroupLayout
الجدول التالي يحتوي على أهم الدوال الموجودة في الكلاس GroupLayout.
الدالة مع تعريفها | |
---|---|
1 | public GroupLayout.SequentialGroupcreateSequentialGroup()ترجع كائن من الكلاس SequentialGroup. أي تستخدم لإنشاء مجموعة ترتب المحتوى الذي يتم وضعه فيها وراء بعضه البعض. |
2 | public GroupLayout.ParallelGroupcreateParallelGroup(GroupLayout.Alignment alignment)ترجع كائن من الكلاس ParallelGroup. أي تستخدم لإنشاء مجموعة ترتب المحتوى الذي يتم وضعه فيها بشكل متوازي مع تحديد طريقة إصطفاف الأشياء التي نضيفها فيها. مكان الباراميتر alignment نضع إحدى ثوابت الكلاس Alignment المخصصة لتحديد طريقة إصطفاف الأشياء التي يتم وضعها في المجموعة.ترمي الإستثناء IllegalArgumentException في حال تم وضع null مكان الباراميتر alignment. |
3 | publicvoidsetHorizontalGroup(GroupLayout.Group group)تستخدم لتحديد تسلسل الأشياء المراد إضافتها في المجموعة أفقياً. مكان الباراميتر group نضع المجموعة التي سيتم تحديد تسلسل محتواها أفقياً.ترمي الإستثناء IllegalArgumentException في حال تم وضع null مكان الباراميتر group. |
4 | publicvoidsetVerticalGroup(GroupLayout.Group group)تستخدم لتحديد تسلسل الأشياء المراد إضافتها في المجموعة عامودياً. مكان الباراميتر group نضع المجموعة التي سيتم تحديد تسلسل محتواها عامودياً.ترمي الإستثناء IllegalArgumentException في حال تم وضع null مكان الباراميتر group. |
5 | publicvoidsetAutoCreateGaps(boolean autoCreatePadding)تستخدم لإضافة هامش بشكل تلقائي بين الأشياء التي تم إضافتها في المجموعة. مكان الباراميتر autoCreatePadding نضع القيمة true في حال أردنا إضافة هامش بشكل تلقائي بين الأشياء الموضوعة في المجموعة. و نضع false إذا لم نرد ذلك. |
6 | publicvoidsetAutoCreateContainerGaps(boolean autoCreateContainerPadding)تستخدم لإضافة هامش بشكل تلقائي في محيط الأشياء التي تم إضافتها في المجموعة. مكان الباراميتر autoCreatePadding نضع القيمة true في حال أردنا إضافة هامش بشكل تلقائي بين الأشياء الموضوعة في المجموعة و حدودها. و نضع false إذا لم نرد ذلك. |
أمثلة شاملة
المثال الأول
المثال التالي يعلمك طريقة ترتيب محتوى الـ Frame بشكل متوازي أفقياً بواسطة الكلاس GroupLayout.
المثال الثاني
المثال التالي يعلمك طريقة ترتيب محتوى الـ Frame بشكل متوازي عامودياً بواسطة الكلاس GroupLayout.
المثال الثالث
المثال التالي يعلمك طريقة ترتيب محتوى الـ Frame بشكل متوازي أفقياً و عامودياً بواسطة الكلاس GroupLayout.
المثال الرابع
المثال التالي يعلمك طريقة إنشاء واجهة تسجيل دخول بواسطة الكلاس GroupLayout.
المثال الخامس
المثال التالي يعلمك طريقة تحديد حجم الأشياء التي تضيفها في الـ Frame و حجم الفراغات بينهم عند إستخدام الـكلاس GroupLayout.
المثال السادس
المثال التالي يعلمك طريقة جعل حجم الأشياء التي تضيفها في الـ Frame يتغير بشكل تلقائي عند تكبير أو تصغير النافذة عند إستخدام الكلاس GroupLayout.
أي ستتعلم كيف تجعل محتوى النافذة Resizable.
المصدر: الكلاس GroupLayout – المناهج السعودية