1 个不稳定版本
0.3.1 | 2023年3月25日 |
---|---|
0.3.0 |
|
0.2.0 |
|
0.1.0 |
|
8 在 #bars
每月38次下载
12KB
200 行
pgbar - 使用Rust编写的最小化进度条 🦀
这是一个用于在终端创建进度条的Rust库。它提供了一种简单的方式来跟踪某些任务的进度,并允许用户自定义其外观和行为。
🎁 安装
将以下内容添加到您的 Cargo.toml
[dependencies]
pgbar = "*"
🧰 使用方法
要使用此库,首先在您的Rust项目中导入它
use pgbar::{ProgressBar, Style};
然后,使用 new()
方法创建一个新的进度条对象,配置您所需的设置
let mut pb = ProgressBar::new(100, 10, Style::default());
第一个参数表示进度条的最大值,第二个参数是完成任务预计所需的时间,第三个参数定义了进度条的风格。您可以通过创建一个新的 Style
结构体并使用您偏好的选项来自定义它。
之后,您可以通过调用 track()
方法开始跟踪任务的进度
pb.track();
这将更新进度条,直到达到定义的最大值。
您也可以使用 update()
、reset()
和 recover()
方法来更新、重置或恢复进度条。
pb.update(50);
pb.reset();
pb.recover();
最后,要完成进度条,请调用 finish()
方法
pb.finish();
🎨 自定义
进度条可以通过以下选项进行自定义:
symbol
:表示任务进度的字符(默认:"*"
)。width
:进度条的宽度(默认:50
)。wrapper
:用于包装进度条的字符(默认:"[]"
)。color
:进度条的颜色(默认:Cyan)。time_to_finish
:是否显示完成任务预计所需的时间(默认:true
)。
要自定义这些选项,请创建一个新的 Style
结构体并使用您偏好的配置,将其作为参数传递给 new()
方法
use termion::color;
let style = Style {
symbol: "#".to_string(),
width: 30,
wrapper: "()".to_string(),
color: Some(&color::Red),
time_to_finish: false,
};
let mut pb = ProgressBar::new(100, 10, style);
🚀 示例
以下是一个简单的示例,展示了如何使用进度条库
use pgbar::{ProgressBar, Style};
use std::thread;
use std::time::Duration;
use termion::color;
fn main() {
let style = Style {
symbol: "=".to_string(),
width: 50,
wrapper: "||".to_string(),
color: Some(&color::Green),
time_to_finish: true,
};
let mut pb = ProgressBar::new(100, 5, style);
for i in 0..=100 {
pb.update(i);
thread::sleep(Duration::from_millis(50));
}
pb.finish();
}
这将创建一个绿色背景、以"="符号和"||"包装器显示的进度条,每50毫秒更新一次进度,直到达到最大值100。
依赖项
~175KB