Въведение в JavaFX ProgressBar

В пакета JavaFX, ProgressBar е форма на индикатор за прогрес, която се обозначава като хоризонтална лента. Той помага за показване на напредъка на определена задача. Обикновено това е двойна стойност между диапазона 0 и 1. Лента за напредък на JavaFX е създадена от класа javafx.scene.control.ProgressBar.

Методите, конструкторите и примерите на JavaFX ProgressBar ще бъдат разгледани в следващите раздели.

Конструктори на JavaFX ProgressBar

По-долу са двата конструктора за JavaFX ProgressBar Constructors.

1. ProgressBar () : Ще бъде създаден междинен ProgressBar.

// create a Progress
ProgressBar pb = new ProgressBar();

2. ProgressBar (double s) : Ще бъде създаден ProgressBar с двойно s като негов напредък.

// create a ProgressBar
ProgressBar pb = new ProgressBar(0);

Методи на JavaFX ProgressBar

Нека видим някои от често използваните методи в JavaFX ProgressBar.

  • isIndeterminate (): Стойността на неопределеното свойство ще бъде върната.
  • getProgress (): Стойността на свойството Progress ще бъде върната.
  • setProgress (boolean v): Ще бъде зададена стойността на свойството Progress.

Как да създадете ProgressBar?

Има няколко стъпки за създаване на лента за напредък.

1. Задайте заглавието на създадения етап

s.setTitle("ProgressBar Sample");

2. създайте лента за прогрес: лентите за напредък могат да бъдат параметризирани или не параметризирани, както следва.

// create a ProgressBar
ProgressBar pb = new ProgressBar(0); //parameterized
// create a ProgressBar
ProgressBar pb = new ProgressBar(); //non-parameterized

3. Добавете лентата за прогрес, създадена към графиката на сцената: Добавете лентата за напредък към графиката на сцената, като използвате стъпките по-долу.

Scene sc = new Scene(r, 300, 200);
s.setScene(sc);
s.show();

Програма за внедряване на лентата за напредък на JavaFX

Сега нека да видим някои от програмите на JavaFX, които прилагат лентата на прогреса на JavaFX.

Програма №1

По-долу е дадена Java програма за демонстриране на лентата за напредък:

Код:

//Java program to demonstrate progress bar
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.ProgressBar;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
//sample class that extends application base class
public class JavaFXProgressBarExample extends Application (
//application starts here
public void start(Stage s) throws Exception (
//create stackpane
StackPane r = new StackPane();
//create progress bar
ProgressBar p = new ProgressBar();
r.getChildren().add(p);
//create scene
Scene sc = new Scene(r, 400, 300);
//set the scene
s.setScene(sc);
//set the title
s.setTitle("Sample Progress Bar");
//display the results
s.show();
)
//main method
public static void main(String() args) (
launch(args);
)
)

Резултат:

Обяснение:

  • Първо се създава лента за напредък и я добавя към графиката на сцената.
  • След като е направено, изходът показва лента за напредък, както е показано по-горе.

Програма №2

Java програма за показване на лента за напредък с етикет.

Код:

//Java program to demonstrate progress bar with a label
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.ProgressBar;
import javafx.scene.control.TextField;
import javafx.scene.layout.StackPane;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Pos;
import javafx.scene.layout.TilePane;
import javafx.stage.Stage;
//sample class that extends application base class
public class JavaFXProgressBarExample extends Application (
//application starts here
public void start(Stage s) throws Exception (
// set title
s.setTitle("JavaFX Progress bar example");
//create progress bar
ProgressBar p = new ProgressBar();
// tile pane
TilePane tp = new TilePane();
// label
Label l = new Label(" This is the progress bar !!!!");
tp.getChildren().add(p);
tp.getChildren().add(l);
Scene sc = new Scene(tp, 200, 200);
s.setScene(sc);
s.show();
)
//main method
public static void main(String() args) (
launch(args);
)
)

Резултат:

Обяснение: Разликата на тази програма от горната програма е, че тук се използва етикет заедно с лентата за напредък.

Програма №3

Java програма за показване на лентата на прогреса с определена стойност.

Код:

//Java program to demonstrate progress bar with a value mentioned by the user
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.ProgressBar;
import javafx.scene.control.TextField;
import javafx.scene.layout.StackPane;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Pos;
import javafx.scene.layout.TilePane;
import javafx.stage.Stage;
//sample class that extends application base class
public class JavaFXProgressBarExample extends Application (
//application starts here
public void start(Stage s) throws Exception (
// set title
s.setTitle("JavaFX Progress Bar example");
//create progress bar
ProgressBar p = new ProgressBar(0);
//set a value for progress bar
p.setProgress(0.75);
// tile pane
TilePane tp = new TilePane();
// label
Label l = new Label(" Showing a progress of 75% !!!!");
tp.getChildren().add(p);
tp.getChildren().add(l);
Scene sc = new Scene(tp, 200, 200);
s.setScene(sc);
s.show();
)
//main method
public static void main(String() args) (
launch(args);
)
)

Резултат:

Обяснение:

  • В лентата на хода, потребителят може също така да зададе стойността преди съставянето на кода.
  • В тази програма стойността е зададена като 0, 75 и може да се види, че лентата за прогрес се показва със затъмнени 75% от лентата.
  • Затъмнената част предполага, че напредъкът е 75%.

Програма №4

Java програма за демонстриране на лентата за напредък с бутон за търсене на лентата, дадена по-долу:

Код:

//Java program to demonstrate progress bar with a button to seek the bar
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.layout.*;
import java.io.*;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.control.Label;
import javafx.stage.Stage;
import java.net.*;
//sample class that extends application base class
public class JavaFXProgressBarExample extends Application (
static double v =0;
//application starts here
public void start(Stage s) throws Exception (
// set title
s.setTitle("JavaFX Progress bar example");
//create progress bar
ProgressBar p = new ProgressBar(0);
// tile pane
TilePane tp = new TilePane();
// action event
EventHandler ev = new EventHandler() (
public void handle(ActionEvent e)
(
// set progress to different level of progressbar
v += 0.1;
p.setProgress(v);
)
);
// creating button
Button btn = new Button("click me to move progress bar");
// set on action
btn.setOnAction(ev);
tp.getChildren().add(p);
tp.getChildren().add(btn);
//create the scene
Scene sc = new Scene(tp, 200, 200);
//set the scene
s.setScene(sc);
//display the result
s.show();
)
//main method
public static void main(String() args) (
launch(args);
)
)

Резултат:

Когато натиснете бутона, напредъкът се увеличава, както е показано на фигурите по-долу.

Обяснение:

  • В началото се създават лента и бутон за напредък.
  • При натискане на бутона се задава действие за увеличаване на напредъка с помощта на обработващ събитията.
  • Така че, когато се натисне бутона, напредъкът се увеличава.

заключение

В JavaFX се използва лента за прогрес, за да се покаже напредъкът на задача с помощта на хоризонтална лента. Решението за избор на конструиран или параметризиран конструктор зависи от изискването на потребителя. Тук, няколко метода и програми на лентата за напредък на JavaFX също са обяснени подробно.

Препоръчителни статии

Това е ръководство за JavaFX ProgressBar. Тук обсъждаме конструкторите, методите и стъпките за създаване на JavaFX ProgressBar заедно с различните примери. Можете също да разгледате следните статии, за да научите повече -

  1. Обект в Java
  2. Капсулиране в JavaScript
  3. Статична ключова дума в Java
  4. Претоварване и отмяна в Java
  5. Етикет на JavaFX
  6. Топ 5 вида Boostrap с примерен код
  7. Как да създадете отметка в JavaFX с примери?
  8. Ръководство за примери на отметка в Bootstrap
  9. Различни методи за създаване на цвят JavaFX
  10. JavaFX VBox | Топ 15 методи
  11. Различни методи на JavaFX StackPane