-->

ما هي JavaFX ومميزاتها ومثال عملي لبرنامج علي netbeans

اخيرا جاء الوقت لمناقشة موضوع جافا اف اكس والتعرف علي ما هي فوائدها لنا في عمل البرامج التجارية وايضا التعرف علي بعض المعلومات التي يمكن ان تفيدنا في كيفية دراستها

وايضا هو اعلان لكورس وكتاب يتحدث عن هذه التقنية 😅😇

ما هي JavaFX


لغة الجافا لديها الكثير من المكونات التي يمكنك ان تقوم بعمل بها برامج احترافية وتكون ايضا مريحة للمستخدم لانها تحتوي علي يسمي واجهة المستخدم (GUI) وهذا ما يجعل البرامج الخاصة بك قيمة ويمكنك ان تقوم ببيعها ولكن مع انه يوجد المكونات الرئيسية مثل (AWT , Swing , Applet ) الا ان هذه المكونات تفتقد بعض المميزات التي تم وضعها في javafx ولهذا اعتمدت شركة oracle تقنية javaFx كمكون اساسي بالاضافة الي ذلك اعلنت انها ستكون بديلة لــ swing ولكن اذا كنت من مستخدمي swing لا تقلق 😱 فانها ستبقي مدعومة ايضا. 😊

اذا ملخص هذا الموضوع هو ان الجافا اف اكس ببساطة مجموعة من المكتبات (packages ) تحتوي علي الكثير من المكونات الرائعة التي يمكن ان تقوم ببناء بها واجهة مستخدم خرافية مثلها مثل الـ swing تحتوي علي ( button , lable , Text Boxes, drop-down lists , tabs , menus ) ولكنها ايضا تحتوي علي ( visual effects , animation , 3d Objects) وهذا ما يجعلها مثالية لعمل الكثير من البرامج والالعاب.

حان الوقت للتعرف علي مميزات FX

ما هي مميزات JAVAFX


  1. visual effects: يمكنك ان تضع الكثير من المؤثرات والصور وتغيير الالوان والخطوط والخلفيات عن طريق CSS كما في الويب فاذا كنا قادرين علي عمل هذه الاشكال المذهلة في الويب كما نري في المواقع فيمكنك بسهولة اعطاء برنامجك الكثير من الاضافات واللمسات الرئعة التي يمكنك ان تصممها بالـ CSS.
  2. animation: يمكنك تحديد التأثيرات الحركية التي تريدها بالاضافة الي الانتقالات (transitions ) التي يمكنك ان تصنعها.
  3. charts: اذا كنت من الذين يتعاملون دائما مع الخرائط مثل الرسوم البيانية او اي من الخرائط الحسابية فيمكنك ان تقوم بالتعامل معها عن طريق حزمة ( javafx.scene.chart).
  4. 3d Objects: يمكنك رسم الكثير من الاشكال الثلاثية الابعاد مثل ( cubs , polygons , cylinders).
  5. Touch interface: تمكنك هذه التقنية من التعمل مع الاحداث التي تنتج عن البرامج التي تعمل علي اجهزة التحكم بها عن طريق (touchscreen) مثل ( smartphones , tablet , touchscreen device ).

  
اذا كيف تقوم بصنع اول برنامج خاص بك باستخدام javaFX 

الحل عندي اتبع الخطوات التالية.

ملحوظة : يمكنك مشاهدة الفيديو ايضا 
رابط الفيديو : https://youtu.be/vI8zCBYgLbI


الخطوة الاولي : افتح برنامج netbeansh اذا لم لديك  قم بتحميله netbeans.org

الخطوة الثانية : قم بعمل مشروع جديد عن طريق file - new project كما موضح في الصورة



الخطوة الثالثة : اختيار نوع المشروع




الخطوة الرابعة : تسمية المشروه واختيار المسار


الخطوة الاخيرة هو عمل Run للبرنامج



بالاخير سترون البرنامج يعمل بعد فترة بهذا الشكل




الاكواد المستخدمة في الشرح :


package firstproject;

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

/**
 * @author New System Technology
 */
public class FirstProject extends Application {

    @Override
    public void start(Stage primaryStage) {
        Button btn = new Button();
        btn.setText("Say 'Hello World'");
        btn.setOnAction(new EventHandler<ActionEvent>() {

            @Override
            public void handle(ActionEvent event) {
                if (btn.getText() == "Say 'Hello World'") {
                    btn.setText("You Said Hello");
                } else {
                    btn.setText("Say 'Hello World'");
                }
            }
        });

        StackPane root = new StackPane();
        root.getChildren().add(btn);

        Scene scene = new Scene(root, 300, 250);

        primaryStage.setTitle("Hello World!");
        primaryStage.setScene(scene);
        primaryStage.show();
    }

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