给进度条添加一个点击信号。代码如下:
#ifndef NEWPROGRESSBAR_H
#define NEWPROGRESSBAR_H
#include <QProgressBar>
class NewProgressBar : public QProgressBar
{
Q_OBJECT
public:
explicit NewProgressBar(QWidget *parent = nullptr);
protected:
void mouseReleaseEvent(QMouseEvent *event) override;
signals:
void clicked();
};
#endif // NEWPROGRESSBAR_H
#include "newprogressbar.h"
NewProgressBar::NewProgressBar(QWidget *parent) : QProgressBar(parent)
{
}
void NewProgressBar::mouseReleaseEvent(QMouseEvent *event)
{
emit clicked();
}
在UI界面上,将进度条提升为NewProgressBar 类型。
在需要的地方捕获clicked()信号绑定槽函数实现自己的功能。
connect(ui->progressBar,SIGNAL(clicked()),this,SLOT(on_progressBar_clicked()));