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

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

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


مثال

Main.java
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.geometry.Pos;
import javafx.scene.control.Button;
import javafx.scene.layout.VBox;

public class Main extends Application {

    @Override
    public void start(Stage stage) {

        // في النافذة Root Node و الذي ننوي جعله الـ VBox هنا قمنا بإنشاء كائن من الكلاس
        VBox root = new VBox();

        // root هنا قمنا بإضافة مسافة فارغة بمقدار 10 بيكسل بين أي شيئين يتم إضافتهما في الكائن
        root.setSpacing(10);
        
        // يظهر في وسطه root هنا قمنا بجعل محتوى الكائن
        root.setAlignment(Pos.CENTER);

        // root هنا قمنا بإنشاء جميع الأشياء التي سنضيفها في الكائن
        Button button1 = new Button("Button 1");
        Button button2 = new Button("Button 2");
        Button button3 = new Button("Button 3");

        // root و الذي سيتغير بشكل تلقائي في حال تغيير حجم الكائن root هنا قمنا بتحديد الحجم المفضل للأشياء التي سنضيفها في الكائن
        button1.setPrefSize(150, 50);
        button2.setPrefSize(150, 50);
        button3.setPrefSize(150, 50);
        
        // root في الكائن button3 و button2 و button1 هنا قمنا بإضافة الكائنات
        root.getChildren().add(button1);
        root.getChildren().add(button2);
        root.getChildren().add(button3);

        // فيها و تحديد حجمها Node كأول root هنا قمنا بإنشاء محتوى النافذة مع تعيين الكائن
        Scene scene = new Scene(root, 300, 150);

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

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

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

    }

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

}

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

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

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

لاحظ أنه عندما يصبح هناك مساحة متوفرة لعرض الأشياء بالحجم الذي نفضله سيصبح حجمهم ثابت و سيظهروا في وسط الـ VBox.