مرحبًا يا من هناك! لذا، أنا جزء من طاقم موردي Swing Screen، ولقد تلقيت مجموعة من الأسئلة حول كيفية استخدام BorderLayout في Swing Screen. واليوم سأقوم بتفصيلها لك خطوة بخطوة.
أولاً، ما هو BorderLayout؟ حسنًا، إنه أحد مديري التخطيط في Java's Swing API. يشبه مديرو التخطيط مهندسي واجهة المستخدم الرسومية (GUI). إنهم يقررون كيفية ترتيب جميع المكونات، مثل الأزرار وحقول النص والتسميات، على الشاشة. يقسم BorderLayout الحاوية إلى خمس مناطق: الشمال والجنوب والشرق والغرب والوسط.
لنبدأ بالقليل من التعليمات البرمجية. فيما يلي مثال بسيط جدًا لإعداد شاشة Swing أساسية باستخدام BorderLayout:
استيراد javax.swing.*; import java.awt.*; public class BorderLayoutExample { public static void main(String[] args) { JFrameframe = new JFrame("BorderLayout Demo"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setLayout(new BorderLayout()); JButton northButton = new JButton("North"); frame.add(northButton, BorderLayout.NORTH); JButton SouthButton = new JButton("South"); frame.add(southButton, BorderLayout.SOUTH); JButton eastButton = new JButton("East"); frame.add(eastButton, BorderLayout.EAST); JButton westButton = new JButton("West"); frame.add(westButton, BorderLayout.WEST); JButton centerButton = new JButton("Center"); frame.add(centerButton, BorderLayout.CENTER); frame.pack(); frame.setVisible(true); } }
في هذا الكود نقوم أولا بإنشاء ملفJFrame، والتي تشبه نافذة شاشة التأرجح الخاصة بنا. ثم قمنا بتعيين تخطيطه علىتخطيط الحدود. بعد ذلك، نقوم بإنشاء خمسةجيبوتونالمكونات وإضافة كل واحد إلى منطقة معينة منتخطيط الحدود. الشمالالمنطقة في الأعلى،جنوبفي الأسفل،شرقعلى اليمين،الغربعلى اليسار، ومركزفي المنتصف.
الشيء الرائع في BorderLayout هو كيفية تعامله مع تغيير حجم المكونات. المركزسيشغل المكون كل المساحة المتبقية بعد ملء المناطق الأخرى. على سبيل المثال، إذا قمت بتغيير حجم الإطار، فإنمركزسيتم توسيع الزر أو تقليصه ليناسب المساحة المتوفرة.
الآن، إليك بعض سيناريوهات العالم الحقيقي حيث قد ترغب في استخدام BorderLayout في شاشة متأرجحة. لنفترض أنك تقوم بإنشاء تطبيق لـلب الخمور السوداءمصنع المعالجة. يمكنك استخدامشمالالمنطقة لعرض شعار المصنع أو عنوانه. الجنوبيمكن أن تحتوي المنطقة على أشرطة حالة توضح حالة العملية الحالية أو رسائل الخطأ. الالغربوشرقيمكن استخدام المناطق لقوائم التنقل أو لوحات التحكم. ومركزيمكن للمنطقة عرض بيانات المعالجة الرئيسية أو البث المباشر من المصنع.
دعونا نتحدث أكثر قليلا عن خصائص كل منطقة.
- الشمال والجنوب: يتم استخدام هذه المناطق للأشياء التي من المفترض أن تكون في أعلى أو أسفل الشاشة، مثل الرؤوس والتذييلات. إنها تمتد أفقيًا ولها ارتفاع ثابت (عادةً ما يكون الارتفاع الذي تتطلبه المكونات التي تحتوي عليها).
- الشرق والغرب: هذه للأشرطة الجانبية. أنها تمتد عموديا ولها عرض ثابت.
- مركز: كما قلت من قبل، فإنه يأخذ كل المساحة المتبقية. يعد هذا أمرًا رائعًا بالنسبة لمنطقة المحتوى الرئيسية لتطبيقك.
الآن، دعونا نرى ما يحدث عندما تريد إضافة مكونات متعددة إلى منطقة واحدة. في هذه الحالة، يمكنك استخدام JPanel. أJPanelهي حاوية يمكنها استيعاب مكونات متعددة، ويمكنك تعيين مدير التخطيط الخاص بها.
وإليك كيفية إضافة أزرار متعددة إلىشمالالمنطقة باستخدام أJPanel:
استيراد javax.swing.*; import java.awt.*; public class MultipleComponentsInRegion { public static void main(String[] args) { JFrameframe = new JFrame("مكونات متعددة في الشمال"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setLayout(new BorderLayout()); JPanel northPanel = new JPanel(); NorthPanel.setLayout(new FlowLayout()); JButton Button1 = new JButton("Button 1"); JButton Button2 = new JButton("Button 2"); northPanel.add(button1); northPanel.add(button2); frame.add(northPanel, BorderLayout.NORTH); frame.pack(); frame.setVisible(true); } }
في هذا الكود نقوم بإنشاءJPanelوتعيين تخطيطه علىتخطيط التدفق(مدير تخطيط آخر يقوم بترتيب المكونات في صف واحد، من اليسار إلى اليمين). ثم نضيف زرين إلىJPanelوإضافةJPanelإلىشمالمنطقة التخطيط الحدود.
شيء آخر يجب ملاحظته هو أنه ليس عليك استخدام المناطق الخمس جميعها. على سبيل المثال، إذا كنت تحتاج فقط إلى رأس ومنطقة محتوى رئيسية، فيمكنك فقط استخدامشمالومركزالمناطق.
استيراد javax.swing.*; import java.awt.*; public class TwoRegionsExample { public static void main(String[] args) { JFrameframe = new JFrame("منطقتان"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setLayout(new BorderLayout()); JLabel northLabel = new JLabel("Header"); frame.add(northLabel, BorderLayout.NORTH); JTextArea centerTextArea = new JTextArea("هذا هو المحتوى الرئيسي."); frame.add(centerTextArea, BorderLayout.CENTER); frame.pack(); frame.setVisible(true); } }
دعنا نتطرق أيضًا إلى بعض النصائح والحيل عند استخدام BorderLayout.
- اعتبارات تغيير الحجم: تذكر أن
مركزسيتم تغيير حجم المكون لملء المساحة المتوفرة. إذا كانت لديك مكونات في مناطق أخرى لا تريد تغيير حجمها، فتأكد من تعيين أحجامها المفضلة بشكل مناسب. - التسلسل الهرمي للمكونات: كما هو مبين في
JPanelعلى سبيل المثال، يمكنك إنشاء تسلسل هرمي للمكونات لإدارة التخطيطات المعقدة. أنت لا تقتصر على المناطق الخمس فقط في BorderLayout؛ يمكنك تداخل الحاويات والتخطيطات الأخرى بالداخل.
إذا كنت تعمل في مشروع متعلق بمعدات عجينة الورق، مثل نظام التحكم لـتقطيع المسمارأو أمصفاة متوسطة الاتساق، يمكن أن يساعدك استخدام BorderLayout في تنظيم واجهة المستخدم الرسومية الخاصة بك بشكل فعال. على سبيل المثال، يمكنك استخدامالغربمنطقة للوحة التحكم لضبط سرعة جهاز التقطيع أو إعدادات تناسق جهاز التكرير، بينمامركزيمكن للمنطقة عرض بيانات في الوقت الفعلي حول تشغيل الجهاز.
في الختام، BorderLayout هو مدير تخطيط قوي ومرن حقًا لـ Swing Screens. إنه أمر رائع لإنشاء واجهات المستخدم الرسومية البسيطة إلى المتوسطة التعقيد. سواء كنت تقوم بإنشاء تطبيق لمصنع لب الورق أو أي نوع آخر من الأنظمة، فإن معرفة كيفية استخدام BorderLayout تمنحك أساسًا متينًا لإنشاء واجهة منظمة وسهلة الاستخدام.


إذا كنت مهتمًا بالحصول على حل Swing Screen لعملك أو مشروعك، فنحن نرغب في التحدث. لا تتردد في التواصل معنا لمناقشة المشتريات. يمكننا العمل معًا لمعرفة أفضل تخطيط وتصميم لاحتياجاتك الخاصة.
مراجع
- دروس جافا - إنشاء واجهة المستخدم الرسومية باستخدام Swing. أوراكل.
- التأرجح: دليل المبتدئين. هربرت شيلدت.
