Swingالكلاس JTabbedPane
- مقدمة
- كونستركتورات الكلاس
JTabbedPane
- أمثلة شاملة
مقدمة
الكلاس JTabbedPane
يستخدم لإضافة (Tabbed Pane) في واجهة المستخدم.
الـ Tabbed Pane تستخدم لوضع عدة Panels في مكان واحد مع إمكانية إظهار Panel واحد منهم في وقت واحد.
كل Panel توضع بداخل الـ Tabbed Pane تملك Tab خاص فيها.
عندما يقوم المستخدم بالنقر على الـ Tab فإنها تظهر الـ Panel التي بداخلها.
إفتراضياً, الـ Tabbed Pane يظهر حدود عند إضافته في النافذة. و يمكنك وضع العدد الذي تريده من الـ Panels بداخله.
بناؤه
public class JTabbedPane extends JComponent implements Serializable, Accessible, SwingConstan
طريقة التعامل معه
لإضافة Panel في الـ Tabbed Pane نستخدم الدالة addTab()
أو الدالة insertTab()
.
كل Panel تضيفه في الـ Tabbed Pane يتم إعطائه رقم Index بشكل تلقائي.
الـ Panel الأول يحمل الـ Index رقم 0.
الـ Panel الثاني يحمل الـ Index رقم 1 إلخ..
لإظهار Panel محدد من الـ Panels الموجودين إستخدام الدالة setSelectedComponent()
أو الدالة setSelectedIndex()
.
محتوى الـ Tab ليس بالضرورة أن يكون Panel.
يمكن أن يكون أي شيء مثل Label, Button, Text Box إلخ..
لكنك على الأغلب ستجعل كل Tab يظهر Panel و تضع المحتوى الذي تريده بداخلها.
كونستركتورات الكلاس JTabbedPane
الجدول التالي يحتوي على جميع الكونستركتورات الموجودة في الكلاس JTabbedPane
.
الكونستركتور مع تعريفه | |
---|---|
1 | public JTabbedPane()
ينشئ كائن من الكلاس JTabbedPane يمثل Tabbed Pane فارغ يظهر الـ Tabs التي نضيفها فيه في الأعلى.سبب ظهور الـ Tabs في الأعلى هو أن الـ Tabbed Pane يستخدم إفتراضياً الثابت JTabbedPane.TOP لتحديد مكان ظهورهم. |
2 | public JTabbedPane(int tabPlacement)
ينشئ كائن من الكلاس JTabbedPane يمثل Tabbed Pane فارغ يظهر الـ Tabs التي نضيفها فيه في المكان الذي نريده.مكان الباراميتر tabPlacement نضع إحدى الثوابت التالية:
يرمي الإستثناء IllegalArgumentException في حال لم يتم تحديد الـ tabPlacement بواسطة الثوابت المخصصة لذلك. |
3 | public JTabbedPane(int tabPlacement, int tabLayoutPolicy)
ينشئ كائن من الكلاس JTabbedPane يمثل Tabbed Pane فارغ يظهر الـ Tabs التي نضيفها فيه في المكان الذي نريده.كما أنه يحدد إذا كان سيتم إضافة Scroll Bar في حال كانت مساحة الـ Tabbed Pane غير كافية لإظهار جميع الـ Tabs وراء بعضهم. أو لتحديد إذا كان سيضعهم فوق بعضهم كما يفعل إفتراضياً, مكان الباراميتر tabPlacement نضع إحدى الثوابت التالية:
مكان الباراميتر tabLayoutPolicy نضع إحدى الثوابت التالية:
يرمي الإستثناء IllegalArgumentException في حال لم يتم تحديد الـ tabPlacement أو الـ tabLayoutPolicy بواسطة الثوابت المخصصة لذلك. |
أمثلة شاملة
المثال الأول
المثال التالي يعلمك طريقة إنشاء كائن من الكلاس JTabbedPane
و إضافة Panels بداخله. ثم إضافته في النافذة.
المثال الثاني
المثال التالي يوضح طريقة ظهور الـ Tabs في حال لم يتم تغيير الـ Tab Layout Policy و كانت مساحة الـ Tabbed Pane غير كافية لإظهار جميع الـ Tabs وراء بعضهم.
المثال الثالث
المثال التالي يعلمك طريقة إظهار Scroll Bar في حال كانت مساحة الـ Tabbed Pane غير كافية لإظهار جميع الـ Tabs وراء بعضهم.
المثال الرابع
المثال التالي يعلمك طريقة إظهار الـ Tabs في أسفل الـ Tabbed Pane و إضافة Scroll Bar في حال كانت مساحة الـ Tabbed Pane غير كافية لإظهار جميع الـ Tabs وراء بعضهم.
المثال الخامس
المثال التالي يعلمك طريقة وضع أيقوانات للـ Tabs.
المثال السادس
المثال التالي يعلمك طريقة إضافة زر إغلاق لكل Tab يتم إضافتها في الـ Tabbed Pane.