可以使用 DWaterProgress 类快速创建圆形容器内水位高低指示进度的动画控件.并提供了可选的是否显示进度文字的选项。
示例代码
main.cpp
#include <DApplication>
#include <DMainWindow>
#include <DWidgetUtil>
#include <QTimer>
#include <QLayout>
#include <DWaterProgress>
DWIDGET_USE_NAMESPACE
int main(int argc, char *argv[])
{
w.setMinimumSize(QSize(600, 200));
QWidget *cw = new QWidget(&w);
QVBoxLayout *layout = new QVBoxLayout(cw);
layout->addWidget(waterProgress);
layout->setAlignment(Qt::AlignCenter);
w.setCentralWidget(cw);
w.show();
QTimer timer;
int progress = 0;
timer.setInterval(100);
QObject::connect(&timer, &QTimer::timeout, [&]() {
progress += 1;
if (progress >= 100) {
timer.stop();
}
});
timer.start();
Dtk::Widget::moveToCenter(&w);
return a.exec();
}
The DMainWindow class provides a main application window.
Definition dmainwindow.h:20
demo运行图片
可见,给出了进度条的一种趣味展示形式,作用是可以减少用户等待中的枯燥, 作为一个中间状态展示给用户,富有趣味性地告知用户该进程进行的进度。