Java中的进度条是一个UI组件,可以用于运行中任务,例如文件上传、下载等操作。
一、Swing进度条
Java Swing提供了一个名为JProgressBar的类,用于创建进度条。
以下代码展示了如何创建一个简单的Swing进度条:
import javax.swing.*;
public class ProgressBarDemo {
public static void main(String[] args) {
JFrame frame = new JFrame("Progress Bar Demo");
JProgressBar progressBar = new JProgressBar(0, 100);
progressBar.setValue(0);
progressBar.setStringPainted(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 200);
frame.setLayout(new FlowLayout());
frame.getContentPane().add(progressBar);
frame.setVisible(true);
for (int i = 0; i <= 100; i++) {
progressBar.setValue(i);
try {
Thread.sleep(100);
} catch (InterruptedException ex) {
ex.printStackTrace();
}
}
}
}
此代码中创建了一个新的JProgressBar实例,并设置最小值和最大值分别为0和100。然后,我们使用setValue方法更新当前进度,并使用setStringPainted方法,来设置进度条上是否显示当前进度。
二、JavaFX进度条
JavaFX也提供了创建进度条的方式,该方式是用ProgressBar类。
以下是一个JavaFX进度条的创建代码:
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.ProgressBar;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class ProgressBarDemoFX extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) {
ProgressBar progressBar = new ProgressBar();
StackPane root = new StackPane();
root.getChildren().add(progressBar);
Scene scene = new Scene(root, 300, 200);
primaryStage.setTitle("ProgressBar Demo");
primaryStage.setScene(scene);
primaryStage.show();
}
}
这段代码创建了一个ProgressBar实例,JavaFX的进度条无法直接设置当前进度,而是通过绑定数据或监听事件来改变进度。
沃梦达教程
本文标题为:如何在Java中创建进度条
基础教程推荐
猜你喜欢
- Java文件管理操作的知识点整理 2023-05-19
- Java实现查找文件和替换文件内容 2023-04-06
- ConditionalOnProperty配置swagger不生效问题及解决 2023-01-02
- Java数据结构之对象比较详解 2023-03-07
- JDK数组阻塞队列源码深入分析总结 2023-04-18
- Java实现线程插队的示例代码 2022-09-03
- java实现多人聊天系统 2023-05-19
- springboot自定义starter方法及注解实例 2023-03-31
- Java并发编程进阶之线程控制篇 2023-03-07
- java基础知识之FileInputStream流的使用 2023-08-11