recent
أخبار ساخنة

تنظيم العناصر عن طريق GridPane في إطار JavaFX في لغة الجافا JAVA الدرس|44|

الصفحة الرئيسية

 

تنظيم العناصر بواسطة GridPane

في هذا الدرس سوف ندرس عنصر مهم جداً في JavaFX و هو GridPane من تسميته يتضح لنا أنه عبارة عن جدول نستطيع من خِلاله تنظيم العناصر في المشهَد, تعلّمنا كيفية إنشاء عناصر و إضافتها للمشهد و اليوم سوف نتعلم كيفية إستخدام GridPane لتنظيم العناصر في المشهد و نحن عندما نقول عناصر يُقصَد بها ( الأزرار و النصوص و الحقول....الخ) أي العناصر التفاعليه التي يتفاعل معها المستخدم مثل ازرار و مربعات نصوص و ComboBox...الخ.

سوف نستخدم الحزمة GridPane التي تتبع إلى layout و يتبعون للحزمة Scene و الحزمة TextField ايضاً تابعه للحزمة Scene نستطيع من خلاله كتابة مربع نص و نستخدم الحزمة button لإنشاء زر.

سوف نتعلم كيفية إنشاء عنصرين تفاعليين و هما مربع نص و زر و إضافتهم إلى الـ GridPane و إضافة GridPane للمشهد ثم إضافة المشهد للمقطع النهائي.

مثال 1

package mhamad;

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.TextField;
import javafx.scene.layout.GridPane;
import javafx.scene.layout.StackPane;
import javafx.scene.text.Text;
import javafx.stage.Stage;

public class Mhamad extends Application {
    
    public void start(Stage stage) {
        TextField txt=new TextField();
        Button b=new Button("click");
        GridPane p=new GridPane();
        p.setHgap(10);
        p.setVgap(10);
        p.setMinSize(400, 400);
        p.setAlignment(Pos.CENTER);
        p.add(b, 0, 0);
        p.add(txt, 0, 1);
        Scene s=new Scene(p);
        stage.setScene(s);
        stage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
    
}


شرح المثال السابق

قبل الدخول للبدء بكتابة البرنامج قمنا بإستدعاء الحزم التي نحتاجها و منها حزمة geometry.Pos هي المسؤولة عن محاذاة GridPane سواء للمنتصف أو يمين أو يسار و الحزمة layout.GridPane هي المسؤولة عن تنظيم العناصر التفاعلية و هي زبدة هذا الدرس و باقي الحزم التي تم إستدعاءها تعرفنا عليها في الدروس السابقة من بداية دروس JavaFX ثم دخلنا للدالة start و بدأنا بكتابة البرنامج و في البداية قمنا بإنشاء كلاس المربع النصي TextField ثم أنشأنا كلاس الزر Button و من ثم قمنا بإنشاء كلاس الـ GridPane و أخذ الكائن p و بعدها قمنا بتحديد الحواشي الأفقية عن طريق setHgap و الحواشي العمودية عن طريق setVgap و أخذو الحاشي 10 للأفقي و العمودي و قُمنا بتحديد حجم GridPane و هو 400 للعرض و 400 للطول بواسطة الدالة setMinSize و من ثم قمنا بمحاذاة GridPane إلى منتصف الشاشة عن طريق setAlignment و القيمة التي أخذها CENTER أي في منتصف الشاشة و أضفنا العناصر إلى GridPane بواسطة الدالة add للعمود الأول 0, 0 و العمود الثاني 0, 1 و اضفناهم للمشهد و أضفنا المشهد إلى النموذج stage و أظهرنا الواجهة, عند تشغيل الكود السابق سوف نحصل على النتيجة التالية

 

كما نلاحظ أنه تم وضع الزر في الخلية 0 و المربع النصي في الخلية 1 كما طلبنا منه, فإذا قمنا بتغير مكان الخلايا عكسياً بالأمر p.add(txt, 1, 0) سوف تكون النتيجة

 

نلاحظ أنه وضعنا الزر في الخلية 0,0 و وضعنا المربع النصي في الخلية 1,0 أي العمود التالي.

إضغط هنا للرجوع للدرس السابق

google-playkhamsatmostaqltradent