当前位置:   article > 正文

Qt控件——进度条QProgressBar_qt进度条控件

qt进度条控件

目录

一、属性和方法

1、值

2、方向

3、外观

4、信号槽

二、QProgressBar案例

1、UI界面布局

2、核心代码


一、属性和方法

1、值

  1. // 获取和设置当前值
  2. int value() const;
  3. void setValue(int);
  4. // 获取和设置最大值
  5. int maximum() const;
  6. void setMaximum(int);
  7. // 获取和设置最小值
  8. int minimum() const;
  9. void setMinimum(int);
  10. // 一次设置最大值和最小值
  11. void setRange(int min, int max)
  12. // 复位当前值
  13. void QProgressBar::reset()

2、方向

  1. // 获取和设置滑动条的方向
  2. Qt::Orientation orientation() const
  3. void setOrientation(Qt::Orientation)

3、外观

  1. // 获取和设置进度条的文本是否显示
  2. bool isTextVisible() const
  3. void setTextVisible(bool visible)
  4. Qt::Alignment alignment() const
  5. void setAlignment(Qt::Alignment alignment)
  6. // 获取格式
  7. QString format() const;
  8. // 设置格式
  9. void setFormat(const QString &format);
  10. // 复位格式
  11. void resetFormat()
  12. // 获取和设置是否外观反转
  13. bool invertedAppearance() const
  14. void setInvertedAppearance(bool invert)

4、信号槽

  1. // 当进度条的值改变时,发射该信号
  2. void valueChanged(int value)

二、QProgressBar案例

1、UI界面布局

2、核心代码

  1. #include "widget.h"
  2. #include "ui_widget.h"
  3. #include <QDebug>
  4. #include <QMessageBox>
  5. Widget::Widget(QWidget *parent) :
  6. QWidget(parent),
  7. ui(new Ui::Widget)
  8. {
  9. ui->setupUi(this);
  10. // 网络
  11. ui->progressBar_wangluo->setRange(0,0);
  12. // 1.下载
  13. ui->progressBar_xiazai->setMinimum(0);
  14. ui->progressBar_xiazai->setMaximum(100);
  15. // 设置文本的显示位置
  16. ui->progressBar_xiazai->setAlignment(Qt::AlignRight);
  17. //定时器与槽函数
  18. mTimerDownload = new QTimer();
  19. mTimerDownload->setInterval(100);
  20. connect(mTimerDownload,&QTimer::timeout,this,&Widget::onDownloadTimeout);
  21. }
  22. Widget::~Widget()
  23. {
  24. delete ui;
  25. }
  26. void Widget::on_pushButton_xiazai_clicked()
  27. {
  28. ui->progressBar_xiazai->reset();
  29. mTimerDownload->start();
  30. }
  31. void Widget::onDownloadTimeout()
  32. {
  33. int currentValue = ui->progressBar_xiazai->value();
  34. if(currentValue >= ui->progressBar_xiazai->maximum()) {
  35. mTimerDownload->stop();
  36. QMessageBox::information(this, "提示", "文件下载完成!");
  37. } else {
  38. ui->progressBar_xiazai->setValue(ui->progressBar_xiazai->value() + 1);
  39. qDebug() << ui->progressBar_xiazai->value();
  40. }
  41. }
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/264422
推荐阅读
相关标签
  

闽ICP备14008679号