منتدى مصر التقني
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

تعلم JavaFx ..مقال19_ واجهة المستخدم الرسومية _ الكلاس ProgressIndicator

اذهب الى الأسفل

تعلم JavaFx ..مقال19_ واجهة المستخدم الرسومية _ الكلاس ProgressIndicator Empty تعلم JavaFx ..مقال19_ واجهة المستخدم الرسومية _ الكلاس ProgressIndicator

مُساهمة من طرف زهراء الجمعة أكتوبر 19, 2018 11:57 am

أهلا بكم

فى المقال السابق [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] وقلنا انه عنصر تحكم رسومي يستخدم لجعل المستخدم يدرك أن عليه الإنتظار قليلاً حتى يتم تنفيذ شيء معين ، مثل التنزيل أو نقل الملفات أو التثبيت.

اليوم المقال عن الكلاس ProgressIndicator هو ايضا شريط تقدم توفرة javafx تشبة كثيرا ProgressBar بل يعتبر الكلاس ProgressIndicator هو الكلاس الأب للكلاس ProgressBar الذي شرحناه في الدرس السابق..... لهذا السبب ستجد أن التعامل مع الكلاس ProgressIndicator يشبه تماماً التعامل مع الكلاس ProgressBar.

وهو ايضا نوعان :


  • الـ ProgressIndicator الذي له قيمة محددة كما في الصورة التالية يسمى Determinate Progress Indicator.


تعلم JavaFx ..مقال19_ واجهة المستخدم الرسومية _ الكلاس ProgressIndicator Determinated-progress-indicator


  • الـ ProgressIndicator الذي ليس له قيمة محددة كما في الصورة التالية يسمى Indeterminate Progress Indicator.


تعلم JavaFx ..مقال19_ واجهة المستخدم الرسومية _ الكلاس ProgressIndicator Indeterminated-progress-indicator

طريقة التعامل معه

يتم إنشاءة على النحو التالى :

1_إستيراد المكتبة التى تحتوى على عناصر واجهة المستخدام الرسومية وتحدديد الكلاس ProgressIndicator

الكود:
import javafx.scene.control.ProgressIndicator;

2_إنشاء كائن جديد من الكلاس ProgressIndicator   يمثل شريط التقدم الذي نريد إضافته في النافذة

الكود:
ProgressIndicator progressIndicator = new ProgressIndicator();

3_ تنسيق اللون :

الكود:
progressIndicator.setStyle("-fx-accent: red;");


والمثال التالي الكامل يعلمك طريقة تغيير لون الـ ProgressIndicator باللون الاحمر

الكود:
import javafx.application.Application;
import javafx.collections.ObservableList;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.ProgressIndicator;
import javafx.stage.Stage;
 
public class Main extends Application {
 
    @Override
    public void start(Stage stage) {
        // الذي نريد إضافته في النافذة ProgressIndicator  يمثل الـ ProgressIndicator هنا قمنا بإنشاء كائن من الكلاس
        ProgressIndicator progressIndicator = new ProgressIndicator();
 
        // أحمر progressIndicator هنا قمنا بجعل لون النقط التي ستظهر بداخل الكائن
        progressIndicator.setStyle("-fx-accent: red;");

        // progressIndicator هنا قمنا بتحديد حجم الكائن
        progressIndicator.setPrefSize(200, 20);

        // في النافذة progressIndicator هنا قمنا بتحديد مكان ظهور الكائن
        progressIndicator.setTranslateX(100);
        progressIndicator.setTranslateY(110);
 
    
        Group root = new Group();
              ObservableList list = root.getChildren();
             list.add(progressIndicator);
 
           Scene scene = new Scene(root, 400, 250);
        stage.setTitle("JavaFX ProgressIndicator");
              stage.setScene(scene);
 
            stage.show();
    }
 
  
    public static void main(String[] args) {
        launch(args);
    }
 
}

و النتيجة على النحو التالى :


تعلم JavaFx ..مقال19_ واجهة المستخدم الرسومية _ الكلاس ProgressIndicator Example-2

فى المثال اعلاه قمنا بانشاء شريط تقديم غير معروف القيمة لكن يمكن انشاء شريط معروف القيم على النحو التالى :
الكود:

import javafx.application.Application;
import javafx.collections.ObservableList;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.ProgressIndicator;
import javafx.stage.Stage;
 
public class Main extends Application {
 
    @Override
    public void start(Stage stage) {
        // مع تحديد القيمة الأولية لكل واحد منهم ProgressIndicator هنا قمنا بإنشاء 5 كائنات من الكلاس
        ProgressIndicator progressIndicator_1 = new ProgressIndicator(0.0);
        ProgressIndicator progressIndicator_2 = new ProgressIndicator(0.25);
        ProgressIndicator progressIndicator_3 = new ProgressIndicator(0.5);
        ProgressIndicator progressIndicator_4 = new ProgressIndicator(0.75);
        ProgressIndicator progressIndicator_5 = new ProgressIndicator(1.0);
        
        // هنا قمنا بتحديد حجم الأشياء التي سنضيفها في النافذة
        progressIndicator_1.setPrefSize(50, 50);
        progressIndicator_2.setPrefSize(50, 50);
        progressIndicator_3.setPrefSize(50, 50);
        progressIndicator_4.setPrefSize(50, 50);
        progressIndicator_5.setPrefSize(50, 50);
        
        // هنا قمنا بتحديد مكان ظهور الأشياء التي سنضيفها في النافذة
        progressIndicator_1.setTranslateX(50);
        progressIndicator_1.setTranslateY(100);
        progressIndicator_2.setTranslateX(110);
        progressIndicator_2.setTranslateY(100);
        progressIndicator_3.setTranslateX(170);
        progressIndicator_3.setTranslateY(100);
        progressIndicator_4.setTranslateX(230);
        progressIndicator_4.setTranslateY(100);
        progressIndicator_5.setTranslateX(290);
        progressIndicator_5.setTranslateY(100);
 
      
        Group root = new Group();
             ObservableList list = root.getChildren();
 
        // group و الذي بدوره سيضيفهم أيضاً في الكائن list هنا قمنا بإضافة جميع الأشياء في الكائن
        list.add(progressIndicator_1);
        list.add(progressIndicator_2);
        list.add(progressIndicator_3);
        list.add(progressIndicator_4);
        list.add(progressIndicator_5);
 
    
        Scene scene = new Scene(root, 400, 250);
 
        stage.setTitle("JavaFX ProgressIndicator");
 
               stage.setScene(scene);
 
              stage.show();
    }
 
 
    public static void main(String[] args) {
        launch(args);
    }
 
}

و النتيجة على النحو التالى :


تعلم JavaFx ..مقال19_ واجهة المستخدم الرسومية _ الكلاس ProgressIndicator Example-3

تحياتى لكم  Very Happy
زهراء
زهراء
........
........

تاريخ التسجيل : 18/02/2011
المساهمات : 438
النقاط : 769
التقيم : 67
الدولة : مصر
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

تعلم JavaFx ..مقال19_ واجهة المستخدم الرسومية _ الكلاس ProgressIndicator Empty رد: تعلم JavaFx ..مقال19_ واجهة المستخدم الرسومية _ الكلاس ProgressIndicator

مُساهمة من طرف NEXT الجمعة أكتوبر 19, 2018 2:34 pm

الله يجزايكم كل خير عنا

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
تعلم JavaFx ..مقال19_ واجهة المستخدم الرسومية _ الكلاس ProgressIndicator Do.php?imgf=154090993464951
NEXT
NEXT
الادارة
الادارة

تاريخ التسجيل : 18/02/2011
المساهمات : 446
النقاط : 200660
التقيم : 28
الدولة : مصر
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

تعلم JavaFx ..مقال19_ واجهة المستخدم الرسومية _ الكلاس ProgressIndicator Empty رد: تعلم JavaFx ..مقال19_ واجهة المستخدم الرسومية _ الكلاس ProgressIndicator

مُساهمة من طرف NEXT الثلاثاء أكتوبر 30, 2018 6:07 am

استفدت كثيرا بهذا المقال ....أكرر شكرى لكي 

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
تعلم JavaFx ..مقال19_ واجهة المستخدم الرسومية _ الكلاس ProgressIndicator Do.php?imgf=154090993464951
NEXT
NEXT
الادارة
الادارة

تاريخ التسجيل : 18/02/2011
المساهمات : 446
النقاط : 200660
التقيم : 28
الدولة : مصر
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

تعلم JavaFx ..مقال19_ واجهة المستخدم الرسومية _ الكلاس ProgressIndicator Empty رد: تعلم JavaFx ..مقال19_ واجهة المستخدم الرسومية _ الكلاس ProgressIndicator

مُساهمة من طرف زهراء الأربعاء أكتوبر 31, 2018 11:17 am

اشكرك اخي الكريم و جزاكم الله خيرا
زهراء
زهراء
........
........

تاريخ التسجيل : 18/02/2011
المساهمات : 438
النقاط : 769
التقيم : 67
الدولة : مصر
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

ََ

مواضيع ذات صلة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى