JavaFX হল Java-তে GUI অ্যাপ্লিকেশন তৈরি করার জন্য একটি শক্তিশালী লাইব্রেরি। JavaFX ব্যবহার করে ডেস্কটপ অ্যাপ্লিকেশন তৈরি করা সহজ এবং এটি বিভিন্ন ধরনের UI উপাদান (যেমন বাটন, টেক্সট ফিল্ড, লেবেল, প্যানেল ইত্যাদি) সমর্থন করে। JavaFX অ্যাপ্লিকেশন তৈরি করতে হলে আপনাকে একটি Application ক্লাস তৈরি করতে হবে যা start() মেথডটি ইমপ্লিমেন্ট করবে।
JavaFX Main Application Class
এখানে একটি সাধারণ JavaFX অ্যাপ্লিকেশনের মূল ক্লাসের উদাহরণ দেওয়া হল।
1. JavaFX Main Application Example
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class MainApplication extends Application {
@Override
public void start(Stage primaryStage) {
// বাটন তৈরি করা
Button btn = new Button("Click Me!");
// বাটনে অ্যাকশন অ্যাড করা
btn.setOnAction(e -> System.out.println("Button Clicked!"));
// লেআউট তৈরি করা
StackPane root = new StackPane();
root.getChildren().add(btn);
// দৃশ্য তৈরি করা (Scene)
Scene scene = new Scene(root, 300, 250);
// স্টেজের (window) শিরোনাম সেট করা
primaryStage.setTitle("JavaFX Example");
// দৃশ্য স্টেজে সেট করা
primaryStage.setScene(scene);
// স্টেজ দেখানো
primaryStage.show();
}
public static void main(String[] args) {
launch(args); // JavaFX অ্যাপ্লিকেশন চালানো
}
}
ব্যাখ্যা:
Applicationক্লাস: JavaFX অ্যাপ্লিকেশন তৈরি করতে আপনাকেApplicationক্লাস থেকে একটি সাবক্লাস তৈরি করতে হবে। এর মধ্যেstart()মেথডটি অবশ্যই ইমপ্লিমেন্ট করতে হবে, যা UI উপাদানগুলি তৈরি এবং প্রদর্শনের জন্য ব্যবহৃত হয়।start()মেথড: এই মেথডটিStageঅবজেক্ট গ্রহণ করে, যা মূল উইন্ডোর প্রতিনিধিত্ব করে। এখানে, আমরা একটিButtonতৈরি করেছি এবং এটি একটিStackPaneলেআউটের মধ্যে রেখেছি।ButtonএবংsetOnAction: একটি বাটন তৈরি করা হয়েছে এবং এর সাথে একটি অ্যাকশন যুক্ত করা হয়েছে যাতে বাটন ক্লিক করলে একটি বার্তা কনসোলে প্রিন্ট হবে।SceneএবংStage:Sceneহল অ্যাপ্লিকেশনের মূল দৃশ্য (UI), যা মূল উইন্ডো (স্টেজ) এর মধ্যে প্রদর্শিত হবে।SceneতেStackPaneলেআউট সেট করা হয়েছে, যেখানে বাটন রাখা হয়েছে।primaryStage.show(): এই লাইনটি স্টেজ (অ্যাপ্লিকেশন উইন্ডো) দেখানোর জন্য ব্যবহার করা হয়।
2. JavaFX অ্যাপ্লিকেশনে অন্যান্য উপাদান যোগ করা
আপনি সহজেই অন্যান্য UI উপাদান যেমন TextField, Label, Slider, ComboBox ইত্যাদি JavaFX অ্যাপ্লিকেশনে যোগ করতে পারেন।
উদাহরণ: JavaFX অ্যাপ্লিকেশনে একটি লেবেল এবং টেক্সটফিল্ড যোগ করা
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.layout.FlowPane;
import javafx.stage.Stage;
public class MainApplication extends Application {
@Override
public void start(Stage primaryStage) {
// লেবেল তৈরি করা
Label label = new Label("Enter your name:");
// টেক্সটফিল্ড তৈরি করা
TextField textField = new TextField();
// বাটন তৈরি করা
Button btn = new Button("Submit");
// বাটনের অ্যাকশন
btn.setOnAction(e -> {
String name = textField.getText();
System.out.println("Hello, " + name);
});
// লেআউট তৈরি করা
FlowPane root = new FlowPane();
root.getChildren().addAll(label, textField, btn);
// দৃশ্য তৈরি করা
Scene scene = new Scene(root, 300, 200);
// স্টেজের শিরোনাম সেট করা
primaryStage.setTitle("JavaFX TextField Example");
// দৃশ্য স্টেজে সেট করা
primaryStage.setScene(scene);
// স্টেজ দেখানো
primaryStage.show();
}
public static void main(String[] args) {
launch(args); // JavaFX অ্যাপ্লিকেশন চালানো
}
}
ব্যাখ্যা:
LabelএবংTextField: এখানে একটিLabelএবং একটিTextFieldতৈরি করা হয়েছে, যা ইউজারকে নাম ইনপুট করার সুযোগ দেয়।ButtonএবংsetOnAction: একটি বাটন তৈরি করা হয়েছে এবং এই বাটনে ক্লিক করার সময় ইউজার ইনপুট নেয় এবং কনসোলে "Hello, [name]" বার্তা প্রদর্শিত হয়।FlowPaneলেআউট: UI উপাদানগুলোকে সজ্জিত করতেFlowPaneব্যবহার করা হয়েছে, যা উপাদানগুলোকে একটি সোজা লাইনে রাখে।SceneএবংStage:Sceneতৈরি করা হয়েছে এবংStageতে সেট করা হয়েছে, যাতে অ্যাপ্লিকেশনটি প্রদর্শিত হয়।
JavaFX অ্যাপ্লিকেশন চালানোর জন্য প্রয়োজনীয় সেটআপ
JavaFX অ্যাপ্লিকেশন চালানোর জন্য আপনাকে কিছু নির্দিষ্ট সেটআপ করতে হতে পারে, বিশেষ করে যদি আপনি JDK 11 বা তার পরের সংস্করণ ব্যবহার করেন, যেহেতু JavaFX এখন আলাদা লাইব্রেরি হিসাবে আসে।
- JavaFX লাইব্রেরি অন্তর্ভুক্ত করা: JavaFX লাইব্রেরি JDK 11 বা তার পরের সংস্করণে আলাদা প্যাকেজ হিসেবে আসে, তাই আপনাকে JavaFX SDK ডাউনলোড করে আপনার প্রকল্পে এটি যুক্ত করতে হবে।
- JVM অপশন: যদি আপনি Java 11 বা তার পরের সংস্করণ ব্যবহার করেন, তাহলে আপনাকে JavaFX লাইব্রেরি চালানোর জন্য JVM অপশন হিসেবে
--module-pathএবং--add-modules javafx.controls,javafx.fxmlব্যবহার করতে হতে পারে।
javac --module-path "path/to/javafx-sdk/lib" --add-modules javafx.controls,javafx.fxml MainApplication.java
java --module-path "path/to/javafx-sdk/lib" --add-modules javafx.controls,javafx.fxml MainApplication
JavaFX হল একটি শক্তিশালী এবং অত্যন্ত ব্যবহারযোগ্য GUI লাইব্রেরি, যা Java-তে ডেস্কটপ অ্যাপ্লিকেশন তৈরি করার জন্য ব্যবহৃত হয়। Application ক্লাস এবং start() মেথড ব্যবহার করে আপনি সহজে একটি JavaFX অ্যাপ্লিকেশন তৈরি করতে পারেন এবং বিভিন্ন UI উপাদান ব্যবহার করে সুন্দর এবং ইন্টারেকটিভ অ্যাপ্লিকেশন ডিজাইন করতে পারেন।
Read more