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

JavaFXطريقة وضع Pane بداخل Pane

المثال التالي يعلمك طريقة وضع Pane بداخل Pane.
ملاحظة: هنا يجب تحديد أماكن الأشياء التي نضيفها في الـ Pane الداخلي نسبة لمكانه و ليس نسبة لمكان الـ Pane الخارجي.


مثال

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

public class Main extends Application {

    @Override
    public void start(Stage stage) {
        
        // في النافذة Root Node و الذي ننوي جعله الـ Pane هنا قمنا بإنشاء كائن من الكلاس
        Pane root = new Pane();

        // root و الذي ننوي وضعه بداخل الكائن Pane هنا قمنا بإنشاء كائن آخر من الكلاس
        Pane pane = new Pane();
        
        // زهري root هنا جعلنا لون خلفية الكائن
        root.setStyle("-fx-background-color: pink");
        
        // بالإضافة إلى حجمه و مكان ظهوره pane هنا قمنا بتحديد لون خلفية الكائن
        pane.setStyle("-fx-background-color: cadetblue");
        pane.setPrefSize(250, 200);
        pane.setTranslateX(50);
        pane.setTranslateY(25);
        
        // pane هنا قمنا بإنشاء جميع الأشياء التي سنضيفها في الكائن
        Button button1 = new Button("Button 1");
        Button button2 = new Button("Button 2");
        Button button3 = new Button("Button 3");
        
        // pane هنا قمنا بتحديد حجم الأشياء التي سنضيفها في الكائن
        button1.setPrefSize(150, 30);
        button2.setPrefSize(150, 30);
        button3.setPrefSize(150, 30);
        
        // pane نسبة لموقع الكائن pane هنا قمنا بتحديد مكان ظهور الأشياء التي سنضيفها في الكائن
        button1.setTranslateX(50);
        button1.setTranslateY(30);
        button2.setTranslateX(50);
        button2.setTranslateY(90);
        button3.setTranslateX(50);
        button3.setTranslateY(150);
        
        // root في الكائن pane هنا قمنا بإضافة الكائن
        root.getChildren().add(pane);
        
        // pane في الكائن button3 و button2 و button1 هنا قمنا بإضافة الكائنات
        pane.getChildren().add(button1);
        pane.getChildren().add(button2);
        pane.getChildren().add(button3);

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

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

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

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

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

}

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

طريقة وضع Pane بداخل Pane في JavaFX