JavaFX Dialogs হল ইউজার ইন্টারফেসের অংশ যা ইউজারের কাছে ইনপুট গ্রহণ করতে, তথ্য প্রদর্শন করতে, বা একটি ক্রিয়া করার জন্য নিশ্চিত করতে ব্যবহৃত হয়। JavaFX-এ Dialogs এবং Alerts ব্যবহৃত হয়, বিশেষত Confirmation Dialogs, Information Dialogs, এবং Custom Dialogs তৈরি করতে। JavaFX বিভিন্ন ধরনের ডায়ালগ প্রদান করে যা বিভিন্ন ধরনের ইন্টারঅ্যাকশন পরিচালনা করতে পারে, যেমন তথ্য প্রদর্শন, নিশ্চিতকরণ, ইত্যাদি।
1. Information Dialog (তথ্য ডায়ালগ)
Information Dialog সাধারণত একটি বার্তা বা তথ্য প্রদর্শন করতে ব্যবহৃত হয়, এবং এটি ইউজারের কোনও ইনপুট ছাড়াই শুধু একটি বার্তা দেখায়।
উদাহরণ: Information Dialog
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Alert;
import javafx.scene.control.Alert.AlertType;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class InformationDialogExample extends Application {
@Override
public void start(Stage primaryStage) {
// Create an information alert
Alert alert = new Alert(AlertType.INFORMATION);
alert.setTitle("Information Dialog");
alert.setHeaderText("Information Header");
alert.setContentText("This is an informational message.");
// Show the alert
alert.showAndWait();
// Setup scene
StackPane root = new StackPane();
Scene scene = new Scene(root, 300, 250);
primaryStage.setTitle("Information Dialog Example");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
ব্যাখ্যা:
AlertType.INFORMATIONব্যবহার করে একটি Information Dialog তৈরি করা হয়েছে।setTitle(),setHeaderText(), এবংsetContentText()মেথড ব্যবহার করে ডায়ালগের টাইটেল, হেডার, এবং কন্টেন্ট বার্তা সেট করা হয়েছে।alert.showAndWait()ডায়ালগ প্রদর্শন করে এবং ইউজারের প্রতিক্রিয়া গ্রহণ করে।
2. Confirmation Dialog (নিশ্চিতকরণ ডায়ালগ)
Confirmation Dialog ইউজার থেকে নিশ্চিতকরণের জন্য ব্যবহৃত হয়, যেমন "আপনি কি এই ক্রিয়াটি করতে চান?"। এটি দুটি অপশন দিয়ে থাকে, যেমন OK এবং Cancel।
উদাহরণ: Confirmation Dialog
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Alert;
import javafx.scene.control.Alert.AlertType;
import javafx.scene.control.ButtonType;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class ConfirmationDialogExample extends Application {
@Override
public void start(Stage primaryStage) {
// Create a confirmation alert
Alert alert = new Alert(AlertType.CONFIRMATION);
alert.setTitle("Confirmation Dialog");
alert.setHeaderText("Confirmation Header");
alert.setContentText("Are you sure you want to proceed?");
// Show the alert and wait for the response
alert.showAndWait().ifPresent(response -> {
if (response == ButtonType.OK) {
System.out.println("User clicked OK.");
} else {
System.out.println("User clicked Cancel.");
}
});
// Setup scene
StackPane root = new StackPane();
Scene scene = new Scene(root, 300, 250);
primaryStage.setTitle("Confirmation Dialog Example");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
ব্যাখ্যা:
AlertType.CONFIRMATIONব্যবহার করে একটি Confirmation Dialog তৈরি করা হয়েছে।ButtonType.OKএবংButtonType.CANCELদিয়ে দুটি অপশন (OK এবং Cancel) যোগ করা হয়েছে।showAndWait()মেথডের মাধ্যমে ডায়ালগ প্রদর্শিত হয় এবং ইউজারের উত্তর অনুযায়ী ক্রিয়া করা হয়।
3. Custom Dialog (কাস্টম ডায়ালগ)
Custom Dialog তৈরি করার জন্য JavaFX আপনাকে Dialog ক্লাসের সপোর্ট দেয়, যা আপনাকে কাস্টম কন্টেন্ট যেমন TextField, ComboBox ইত্যাদি যোগ করার সুযোগ দেয়। এটি আপনাকে ডায়ালগের ভিতরে যে কোনও কাস্টম UI উপাদান রাখতে সহায়তা করে।
উদাহরণ: Custom Dialog
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Dialog;
import javafx.scene.control.TextField;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class CustomDialogExample extends Application {
@Override
public void start(Stage primaryStage) {
// Create a custom dialog
Dialog<String> dialog = new Dialog<>();
dialog.setTitle("Custom Dialog");
dialog.setHeaderText("Enter your name:");
// Create a TextField for user input
TextField textField = new TextField();
dialog.getDialogPane().setContent(textField);
// Add OK and Cancel buttons
Button okButton = (Button) dialog.getDialogPane().lookupButton(ButtonType.OK);
okButton.setOnAction(e -> {
String name = textField.getText();
System.out.println("User's name: " + name);
dialog.close();
});
// Setup scene
StackPane root = new StackPane();
Scene scene = new Scene(root, 300, 250);
primaryStage.setTitle("Custom Dialog Example");
primaryStage.setScene(scene);
primaryStage.show();
// Show the dialog and wait for the user input
dialog.showAndWait();
}
public static void main(String[] args) {
launch(args);
}
}
ব্যাখ্যা:
- Custom Dialog তৈরির জন্য Dialog ক্লাস ব্যবহার করা হয়েছে।
- একটি TextField কন্ট্রোল তৈরি করা হয়েছে এবং সেটি ডায়ালগের কন্টেন্ট হিসেবে যোগ করা হয়েছে।
- ButtonType.OK ব্যবহার করে OK বাটন সেট করা হয়েছে এবং ইউজারের ইনপুট নেওয়া হয়েছে।
4. Dialogs এর অন্যান্য ফিচার:
- Dialog.setResult():
- আপনি ডায়ালগ থেকে একটি ফলাফল ফিরে পেতে পারেন। উদাহরণস্বরূপ, একটি TextField এর ইনপুট একটি রিটার্ন ভ্যালু হিসেবে ব্যবহার করতে পারেন।
- Custom Buttons:
- Alert এবং Dialog এ কাস্টম বাটন যোগ করা যেতে পারে, যেমন OK, Cancel, এবং অন্য যেকোনো কাস্টম বাটন।
- Style Customization:
- আপনি JavaFX এর স্টাইলশীট (CSS) ব্যবহার করে ডায়ালগ এবং এলার্ট এর স্টাইল কাস্টমাইজ করতে পারেন।
সারাংশ:
- Information Dialog সাধারণত ইউজারকে কোনো তথ্য বা বার্তা প্রদর্শন করতে ব্যবহৃত হয়।
- Confirmation Dialog ইউজার থেকে নিশ্চিতকরণের জন্য ব্যবহৃত হয়, যেখানে OK এবং Cancel বাটন থাকে।
- Custom Dialog তৈরি করতে JavaFX এর Dialog ক্লাস ব্যবহার করা হয়, যেখানে আপনি কাস্টম কন্টেন্ট এবং কাস্টম বাটন যোগ করতে পারেন।
এগুলি JavaFX অ্যাপ্লিকেশনগুলিতে ইন্টারঅ্যাকশন, ইউজার ইনপুট, এবং তথ্য প্রদর্শনের জন্য গুরুত্বপূর্ণ উপাদান।
Read more