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

JavaFXطريقة إظهار محتوى الـBorderPane على كل المساحة المتوفرة

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


مثال

Main.java
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.scene.control.Button;
import javafx.scene.layout.BorderPane;

public class Main extends Application {

    @Override
    public void start(Stage stage) {
        
        // في النافذة Root Node و الذي ننوي جعله الـ BorderPane هنا قمنا بإنشاء كائن من الكلاس
        BorderPane root = new BorderPane();
        
        // root هنا قمنا بإنشاء جميع الأشياء التي سنضيفها في الكائن
        Button buttonCenter = new Button("Center");
        Button buttonTop    = new Button("Top");
        Button buttonRight  = new Button("Right");
        Button buttonBottom = new Button("Bottom");
        Button buttonLeft   = new Button("Left");
        
        // root هنا قمنا بتحديد موقع كل شيء سيتم إضافته في الكائن
        root.setCenter(buttonCenter);
        root.setTop(buttonTop);
        root.setRight(buttonRight);
        root.setBottom(buttonBottom);
        root.setLeft(buttonLeft);
        
        // الذي سيتم عرضه في وسط النافذة يظهر على كل المساحة المتوفرة buttonCenter هنا قمنا بجعل الكائن
        buttonCenter.setPrefSize(Double.MAX_VALUE, Double.MAX_VALUE);

        // الذي سيتم عرضه في أعلى النافذة يظهر على كل المساحة المتوفرة بالعرض buttonTop هنا قمنا بجعل الكائن
        buttonTop.setPrefWidth(Double.MAX_VALUE);

        // الذي سيتم عرضه في يمين النافذة يظهر على كل المساحة المتوفرة بالطول buttonRight هنا قمنا بجعل الكائن
        buttonRight.setPrefHeight(Double.MAX_VALUE);

        // الذي سيتم عرضه في أسفل النافذة يظهر على كل المساحة المتوفرة بالعرض buttonBottom هنا قمنا بجعل الكائن
        buttonBottom.setPrefWidth(Double.MAX_VALUE);

        // الذي سيتم عرضه في يسار النافذة يظهر على كل المساحة المتوفرة بالطول buttonLeft هنا قمنا بجعل الكائن
        buttonLeft.setPrefHeight(Double.MAX_VALUE);
        
        // فيها و تحديد حجمها Node كأول root هنا قمنا بإنشاء محتوى النافذة مع تعيين الكائن
        Scene scene = new Scene(root, 350, 250);

        // هنا وضعنا عنوان للنافذة
        stage.setTitle("JavaFX BorderPane");

        // أي وضعنا محتوى النافذة الذي قمنا بإنشائه للنافذة .stage في كائن الـ scene هنا وضعنا كائن الـ
        stage.setScene(scene);

        // هنا قمنا بإظهار النافذة
        stage.show();
        
    }

    // هنا قمنا بتشغيل التطبيق
    public static void main(String[] args) {
        launch(args);
    }

}

ستظهر لك النافذة التالية عند التشغيل.

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

ببطئ قم بتكبير حجم النافذة و تصغيرها بواسطة الفأرة لتفهم أكثر كيف تم ترتيب العناصر.