📜  JavaFX |进度条

📅  最后修改于: 2022-05-13 01:55:42.532000             🧑  作者: Mango

JavaFX |进度条

ProgressBar 是 JavaFX 包的一部分。它是 ProgressIndicator 的特化,表示为水平条。进度条通常显示任务的完成量。

ProgressBar 类的构造函数是:

  1. ProgressBar() :创建一个新的中间进度条。
  2. ProgressBar(double p) :创建具有指定进度的进度条。

常用方法

methodexplanation
isIndeterminate()Gets the value of the property indeterminate.
getProgress()Gets the value of the property progress.
setProgress(double v)Sets the value of the property progress

下面的程序说明了 ProgressBar:

该程序创建一个由名称pb指示的进度条。进度指示器将在场景中创建,而场景又将托管在舞台(这是顶级 JavaFX 容器)中。函数setTitle() 用于为舞台提供标题。然后创建一个平铺窗格,在该窗格上调用 addChildren() 方法以附加进度指示器和场景内的按钮,以及代码中 (200, 200) 指定的分辨率。最后调用 show() 方法显示最终结果。

// Java program to illustrate the use of progressbar
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.*;
public class progress extends Application {
  
    static double ii = 0;
  
    // launch the application
    public void start(Stage s) throws Exception
    {
        // set title for the stage
        s.setTitle("creating progressbar");
  
        // create a progressbar
        ProgressBar pb = new ProgressBar();
  
        // create a tile pane
        TilePane r = new TilePane();
  
        // action event
        EventHandler event = new EventHandler() {
            public void handle(ActionEvent e)
            {
                // set progress to different level of progressbar
                ii += 0.1;
                pb.setProgress(ii);
            }
  
        };
  
        // creating button
        Button b = new Button("increase");
  
        // set on action
        b.setOnAction(event);
  
        // add button
        r.getChildren().add(pb);
        r.getChildren().add(b);
  
        // create a scene
        Scene sc = new Scene(r, 200, 200);
  
        // set the scene
        s.setScene(sc);
  
        s.show();
    }
  
    public static void main(String args[])
    {
        // launch the application
        launch(args);
    }
}

输出


注意:以下程序可能无法在在线 IDE 中运行,请使用离线编译器。
参考: https://docs.oracle.com/javase/8/javafx/api/javafx/scene/control/ProgressBar.html