Programming Basics SQL HTML CSS JavaScript React Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Linux Learn Typing

JavaFXالكلاس HBox

  • مقدمة
  • كونستركتورات الكلاس HBox
  • دوال الكلاس HBox
  • أمثلة شاملة

مقدمة

الكلاس HBox يستخدم لإنشاء حاوية ترتب الأشياء التي نضيفها فيها بشكل أفقي.

إفتراضياً, الأشياء التي نضيفها في كائن الـ HBox تظهر في الأعلى من جهة اليسار.
و طبعاً تستطيع تحديد من أي جهة تريد أن تظهر الأشياء التي يتم إضافتها فيه.

حجم كائن الـ HBox يمكن تحديده, و يمكن تحديد ما إذا كانت الأشياء بداخله سيتغير حجمها مع تغيّر حجمه أم أن حجمها ثابت لا يتغير.

حجم الفراغ بين الأشياء التي نضيفها فيه يمكن تحديده من جميع الإتجاهات.


بناء الكلاس HBox

@DefaultProperty(value="content")
public class HBox
extends Control

كونستركتورات الكلاس HBox

الجدول التالي يحتوي على كونستركتورات الكلاس HBox.

الكونستركتور مع تعريفه
1 HBox() ينشئ كائن من الكلاس HBox يمثل حاوية فارغة ترتب الأشياء التي نضيفها فيها بشكل أفقي.
2 HBox(double spacing) ينشئ كائن من الكلاس HBox يمثل حاوية فارغة ترتب الأشياء التي نضيفها فيها بشكل أفقي مع تحديد المسافة الفارغة بين الأشياء التي نضيفها فيها.
مكان الباراميتر spacing نمرر رقم يمثل حجم المسافة الفارغة التي سيتم وضعها بين الأشياء التي نضيفها فيها.
3 HBox(Node... children) ينشئ كائن من الكلاس HBox يمثل حاوية ترتب الأشياء التي نضيفها فيها بشكل أفقي مع تحديد الأشياء التي نريد وضعها فيها.
مكان الباراميتر children نمرر الأشياء التي نريد وضعها فيها مع وضع فاصلة بين كل شيئين.
4 HBox(double spacing, Node... children) ينشئ كائن من الكلاس HBox يمثل حاوية ترتب الأشياء التي نضيفها فيها بشكل أفقي مع تحديد الأشياء التي نريد وضعها فيها و المسافة الفارغة بينهم.
مكان الباراميتر spacing نمرر رقم يمثل حجم المسافة الفارغة التي سيتم وضعها بين الأشياء التي نضيفها فيها.
مكان الباراميتر children نمرر الأشياء التي نريد وضعها فيها مع وضع فاصلة بين كل شيئين.

دوال الكلاس HBox

الجدول التالي يحتوي على دوال الكلاس HBox الأكثر إستخداماً.

الدالة مع تعريفها
1 public void setSpacing(int value) تستخدم لتحديد حجم الفراغ بين كل شيئين يتم إضافتهما في كائن الـ HBox الذي قام باستدعائها.
مكان الباراميتر value نمرر رقم يمثل حجم الفراغ بالـ Pixel.
2 public final void setAlignment(Pos value) تستخدم لتحديد مكان ظهور الأشياء التي سيتم وضعها في كائن الـ HBox الذي قام باستدعائها.
مكان الباراميتر value نمرر إحدى ثوابت الكلاس Pos:
  • TOP_LEFT: يظهر المحتوى في الأعلى ناحية اليسار.
  • TOP_CENTER: يظهر المحتوى في الأعلى و في الوسط.
  • TOP_RIGHT: يظهر المحتوى في الأعلى ناحية اليمين.
  • CENTER_LEFT: يظهر المحتوى في الوسط ناحية اليسار.
  • CENTER: يظهر المحتوى في الوسط تماماً.
  • CENTER_RIGHT: يظهر في الوسط ناحية اليمين.
  • BOTTOM_LEFT: يظهر المحتوى في الأسفل ناحية اليسار.
  • BOTTOM_CENTER: يظهر المحتوى في الأسفل و في الوسط.
  • BOTTOM_RIGHT: يظهر المحتوى في الأسفل ناحية اليمين.
3 public final void setFillHeight(boolean value) تستخدم لتحديد ما إذا كانت الأشياء التي سنضيفها في كائن الـ HBox الذي قام باستدعائها ستتأثر بطوله أم لا.
مكان الباراميتر value نمرر القيمة true في حال أردنا جعل طول الأشياء يتغير بشكل تلقائي نسبة لطول الـ HBox.
4 public static void setMargin(Node child, Insets value) تستخدم لإضافة فراغ حول أي شيء موضوع بداخل HBox.
مكان الباراميتر child نمرر الشيء الذي نريد إضافة فراغ حوله.
مكان الباراميتر value نمرر كائن من الكلاس Insets نحدد فيه حجم الفراغ الذي سيتم إضافته للشيء من الجهات الأربعة ( فوقه, يمينه, تحته, يساره ).
5 public static void setHgrow(Node child, Priority value) تستخدم لتحديد ما إذا كان عرض الشيء الموضوع بداخل HBox سيتأثر بعرضه أم أن عرضه سيظل ثابت.
مكان الباراميتر child نمرر الشيء الذي نريد تحديد ما إن كان عرضه سيتأثر بعرض الـ HBox أم لا.
مكان الباراميتر value نمرر إحدى ثوابت الكلاس Priority التي تحدد ذلك:
  • ALWAYS: لجعل عرض الشيء يظهر على أكبر مساحة متوفرة في كائن الـ HBox.
  • NEVER: لجعل عرض الشيء ثابت لا يتأُثر أبدً بحجم كائن الـ HBox.
  • SOMETIMES: لجعل عرض الشيء يظهر على أكبر مساحة متوفرة في كائن الـ HBox في حال لم يكن هناك أي شيء آخر قد تم تعيينه ليظهر على أكبر مساحة متوفرة فيه.
6 public final void setStyle(String value) تستخدم لتعديل تصميم كائن الـ HBox الذي قام بإستدعائها.
مكان الباراميتر value يمكنك تمرير إسم و قيمة أي خاصية تريد تعديلها في كائن الـ HBox بأسلوب لغة CSS لإظهاره بالشكل الذي تريده.
7 public ObservableList<Node> getChildren() ترجع كائن نوعه ObservableList يمثل محتوى كائن الـ HBox الذي قام بإستدعائها مما يجعلك قادراً على إضافة كائنات جديدة أو حذف كائنات موجودة فيه.

أمثلة شاملة


المثال الأول

المثال التالي يعلمك طريقة إنشاء كائن من الكلاس HBox و وضعه كـ Root Node.

طريقة وضع محتوى الصفحة في HBox في JavaFX

شاهد المثال



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

المثال التالي يعلمك طريقة إضافة مسافة فارغة بين الأشياء التي نضيفها في HBox.
بالإضافة إلى عرض محتوى الـ HBox في الوسط.

طريقة إضافة مسافة فارغة بين الأشياء التي نضيفها في HBox في JavaFX

شاهد المثال



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

المثال التالي يوضح كيف تتغير أحجام الأشياء التي نضعها في HBox كلما تغير حجمه و كيف أن المسافات الفارغة لا تتأثر.

كيف تتغير أحجام الأشياء التي نضعها في HBox في JavaFX

شاهد المثال



المثال الرابع

المثال التالي يعلمك طريقة إضافة هامش من جميع الإتجاهات لأي شيء تم وضعه في HBox.

طريقة إضافة هامش من جميع الإتجاهات لأي شيء تم وضعه في HBox في JavaFX

شاهد المثال



المثال الخامس

المثال التالي يعلمك طريقة جعل محتوى الـ HBox يظهر على كل المساحة المتوفرة.

طريقة جعل محتوى ال HBox يظهر على كل المساحة المتوفرة فيه في JavaFX

شاهد المثال