DtkWidget
DTK Widget module
载入中...
搜索中...
未找到
Dtk::Widget::DWaterProgress类 参考

可以使用 DWaterProgress 类快速创建圆形容器内水位高低指示进度的动画控件.并提供了可选的是否显示进度文字的选项。 更多...

类 Dtk::Widget::DWaterProgress 继承关系图:

Public 槽

void start ()
 开始水位动画
 
void stop ()
 停止水位动画
 
void setValue (int value)
 设置当前进度值,(范围 0~100)
 
void setTextVisible (bool visible)
 设置是否显示进度文字
 

信号

void valueChanged ()
 

Public 成员函数

 DWaterProgress (QWidget *parent=0)
 
int value () const
 当前进度值
 

Protected 成员函数

void paintEvent (QPaintEvent *) Q_DECL_OVERRIDE
 
void changeEvent (QEvent *e) override
 

属性

int value
 

详细描述

可以使用 DWaterProgress 类快速创建圆形容器内水位高低指示进度的动画控件.并提供了可选的是否显示进度文字的选项。

示例代码

main.cpp

#include <DApplication>
#include <DMainWindow>
#include <DWidgetUtil>
#include <QTimer>
#include <QLayout>
#include <DWaterProgress>
DWIDGET_USE_NAMESPACE
int main(int argc, char *argv[])
{
DApplication a(argc, argv);
w.setMinimumSize(QSize(600, 200));
QWidget *cw = new QWidget(&w);
QVBoxLayout *layout = new QVBoxLayout(cw);
DWaterProgress *waterProgress = new DWaterProgress(cw);
waterProgress->setValue(0);
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;
waterProgress->setValue(progress);
if (progress >= 100) {
timer.stop();
}
});
timer.start();
Dtk::Widget::moveToCenter(&w);
return a.exec();
}
DApplication 是 DTK 中用于替换 QCoreApplication 相关功能实现的类.
Definition dapplication.h:33
The DMainWindow class provides a main application window.
Definition dmainwindow.h:20
可以使用 DWaterProgress 类快速创建圆形容器内水位高低指示进度的动画控件.并提供了可选的是否显示进度文字的选项。
Definition dwaterprogress.h:18
void setValue(int value)
设置当前进度值,(范围 0~100)
Definition dwaterprogress.cpp:132

demo运行图片

可见,给出了进度条的一种趣味展示形式,作用是可以减少用户等待中的枯燥, 作为一个中间状态展示给用户,富有趣味性地告知用户该进程进行的进度。

成员函数说明

◆ setTextVisible

void DWaterProgress::setTextVisible ( bool  visible)
slot

设置是否显示进度文字

参数
[in]visible设置进度文字是否显示,如值为 50 时显示 50% 。

◆ setValue

void DWaterProgress::setValue ( int  value)
slot

设置当前进度值,(范围 0~100)

参数
[in]value当前的进度值

该类的文档由以下文件生成: