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

JavaFXإظهار محتوى الـTilePane بشكل عامودي

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


مثال

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

public class Main extends Application {

    @Override
    public void start(Stage stage) {
        
        // في النافذة Root Node و الذي ننوي جعله الـ TilePane هنا قمنا بإنشاء كائن من الكلاس
        TilePane root = new TilePane();
        
        // هنا جعلنا الأشياء التي نضيفها تترتب بشكل عامودي
        root.setOrientation(Orientation.VERTICAL);
        
        // تظهر في وسطه root هنا جعلنا الأشياء التي نضيفها في الكائن
        root.setAlignment(Pos.CENTER);
        
        // و النافذة نفسها root هنا قمنا بإضافة هامش بمقدار 5 بيكسل بين الكائن
        root.setPadding(new Insets(5));
        
        // root هنا قمنا بإضافة هامش بمقدار 10 بيكسل أفقياً بين كل شيئين يتم إضافتهما في الكائن
        root.setHgap(10);
        
        // root هنا قمنا بإضافة هامش بمقدار 10 بيكسل عامودياً بين كل شيئين يتم إضافتهما في الكائن
        root.setVgap(10);
        
        // root هنا قمنا بإنشاء جميع الأشياء التي سنضيفها في الكائن
        Button button1 = new Button("Monday");
        Button button2 = new Button("Tuesday");
        Button button3 = new Button("Wednesday");
        Button button4 = new Button("Thursday");
        Button button5 = new Button("Friday");
        Button button6 = new Button("Saturday");
        Button button7 = new Button("Sunday");
        
        // root في الكائن button7 و button6 و button5 و button4 و button3 و button2 و button1 هنا قمنا بإضافة الكائنات
        root.getChildren().addAll(button1, button2, button3, button4, button5, button6, button7);

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

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

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

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

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

}

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

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

طريقة جعل محتوى ال TilePane يظهر بشكل عامودي في JavaFX