JavaFXطريقة تحديد قيمة الـProgressBar
المثال التالي يعلمك طريقة تحديد قيمة الـ ProgressBar.
مثال
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.ProgressBar;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage stage) {
// مع تحديد القيمة الأولية لكل واحد منهم ProgressBar هنا قمنا بإنشاء 4 كائنات من الكلاس
ProgressBar progressBar_1 = new ProgressBar(0.25);
ProgressBar progressBar_2 = new ProgressBar(0.5);
ProgressBar progressBar_3 = new ProgressBar(0.75);
ProgressBar progressBar_4 = new ProgressBar(1.0);
// سنضيفه في النافذة ProgressBar وضعنا فيه النسبة التي يمثلها كل Label هنا قمنا بإنشاء 4 كائنات من الكلاس
Label label_1 = new Label("25 %");
Label label_2 = new Label("50 %");
Label label_3 = new Label("75 %");
Label label_4 = new Label("100 %");
// قمنا بإنشائه ProgressBar هنا قمنا بتحديد لون خط كل كائن
progressBar_1.setStyle("-fx-accent: red;");
progressBar_2.setStyle("-fx-accent: orange;");
progressBar_3.setStyle("-fx-accent: yellow;");
progressBar_4.setStyle("-fx-accent: green;");
// هنا قمنا بتحديد حجم الأشياء التي سنضيفها في النافذة
label_1.setPrefSize(40, 20);
label_2.setPrefSize(40, 20);
label_3.setPrefSize(40, 20);
label_4.setPrefSize(40, 20);
progressBar_1.setPrefSize(200, 20);
progressBar_2.setPrefSize(200, 20);
progressBar_3.setPrefSize(200, 20);
progressBar_4.setPrefSize(200, 20);
// هنا قمنا بتحديد مكان ظهور الأشياء التي سنضيفها في النافذة
label_1.setTranslateX(290);
label_1.setTranslateY(80);
label_2.setTranslateX(290);
label_2.setTranslateY(110);
label_3.setTranslateX(290);
label_3.setTranslateY(140);
label_4.setTranslateX(290);
label_4.setTranslateY(170);
progressBar_1.setTranslateX(80);
progressBar_1.setTranslateY(80);
progressBar_2.setTranslateX(80);
progressBar_2.setTranslateY(110);
progressBar_3.setTranslateX(80);
progressBar_3.setTranslateY(140);
progressBar_4.setTranslateX(80);
progressBar_4.setTranslateY(170);
// في النافذة Root Node لأننا ننوي جعله الـ Group هنا قمنا بإنشاء كائن من الكلاس
Group root = new Group();
// root هنا قمنا بإضافة جميع الأشياء في الكائن
root.getChildren().add(progressBar_1);
root.getChildren().add(progressBar_2);
root.getChildren().add(progressBar_3);
root.getChildren().add(progressBar_4);
root.getChildren().add(label_1);
root.getChildren().add(label_2);
root.getChildren().add(label_3);
root.getChildren().add(label_4);
// فيها و تحديد حجمها Node كأول root هنا قمنا بإنشاء محتوى النافذة مع تعيين الكائن
Scene scene = new Scene(root, 400, 250);
// هنا وضعنا عنوان للنافذة
stage.setTitle("JavaFX ProgressBar");
// أي وضعنا محتوى النافذة الذي قمنا بإنشائه للنافذة .stage في كائن الـ scene هنا وضعنا كائن الـ
stage.setScene(scene);
// هنا قمنا بإظهار النافذة
stage.show();
}
// هنا قمنا بتشغيل التطبيق
public static void main(String[] args) {
launch(args);
}
}
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.ProgressBar;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage stage) {
// مع تحديد القيمة الأولية لكل واحد منهم ProgressBar هنا قمنا بإنشاء 4 كائنات من الكلاس
ProgressBar progressBar_1 = new ProgressBar(0.25);
ProgressBar progressBar_2 = new ProgressBar(0.5);
ProgressBar progressBar_3 = new ProgressBar(0.75);
ProgressBar progressBar_4 = new ProgressBar(1.0);
// سنضيفه في النافذة ProgressBar وضعنا فيه النسبة التي يمثلها كل Label هنا قمنا بإنشاء 4 كائنات من الكلاس
Label label_1 = new Label("25 %");
Label label_2 = new Label("50 %");
Label label_3 = new Label("75 %");
Label label_4 = new Label("100 %");
// قمنا بإنشائه ProgressBar هنا قمنا بتحديد لون خط كل كائن
progressBar_1.setStyle("-fx-accent: red;");
progressBar_2.setStyle("-fx-accent: orange;");
progressBar_3.setStyle("-fx-accent: yellow;");
progressBar_4.setStyle("-fx-accent: green;");
// هنا قمنا بتحديد حجم الأشياء التي سنضيفها في النافذة
label_1.setPrefSize(40, 20);
label_2.setPrefSize(40, 20);
label_3.setPrefSize(40, 20);
label_4.setPrefSize(40, 20);
progressBar_1.setPrefSize(200, 20);
progressBar_2.setPrefSize(200, 20);
progressBar_3.setPrefSize(200, 20);
progressBar_4.setPrefSize(200, 20);
// هنا قمنا بتحديد مكان ظهور الأشياء التي سنضيفها في النافذة
label_1.setTranslateX(290);
label_1.setTranslateY(80);
label_2.setTranslateX(290);
label_2.setTranslateY(110);
label_3.setTranslateX(290);
label_3.setTranslateY(140);
label_4.setTranslateX(290);
label_4.setTranslateY(170);
progressBar_1.setTranslateX(80);
progressBar_1.setTranslateY(80);
progressBar_2.setTranslateX(80);
progressBar_2.setTranslateY(110);
progressBar_3.setTranslateX(80);
progressBar_3.setTranslateY(140);
progressBar_4.setTranslateX(80);
progressBar_4.setTranslateY(170);
// في النافذة Root Node لأننا ننوي جعله الـ Group هنا قمنا بإنشاء كائن من الكلاس
Group root = new Group();
// root هنا قمنا بإضافة جميع الأشياء في الكائن
root.getChildren().add(progressBar_1);
root.getChildren().add(progressBar_2);
root.getChildren().add(progressBar_3);
root.getChildren().add(progressBar_4);
root.getChildren().add(label_1);
root.getChildren().add(label_2);
root.getChildren().add(label_3);
root.getChildren().add(label_4);
// فيها و تحديد حجمها Node كأول root هنا قمنا بإنشاء محتوى النافذة مع تعيين الكائن
Scene scene = new Scene(root, 400, 250);
// هنا وضعنا عنوان للنافذة
stage.setTitle("JavaFX ProgressBar");
// أي وضعنا محتوى النافذة الذي قمنا بإنشائه للنافذة .stage في كائن الـ scene هنا وضعنا كائن الـ
stage.setScene(scene);
// هنا قمنا بإظهار النافذة
stage.show();
}
// هنا قمنا بتشغيل التطبيق
public static void main(String[] args) {
launch(args);
}
}
ستظهر لك النافذة التالية عند التشغيل.