实现对显示图片增加半透明蒙版,表示图片绘制或者打印的进度。实现方式是叠加一层半透明QWidget,然后改变其位置和大小。
.h文件
#pragma once
#include "ui_TaskPicFrame.h"
#include "TaskList.h"
#include "Global.h"
class TaskPicFrame : public QLabel
{
Q_OBJECT
public:
TaskPicFrame(QWidget *parent = Q_NULLPTR);
~TaskPicFrame();
public slots:
void InitTaskInfo(TaskInfoItem* infoitem);
void UpdateProgress(TaskInfoItem* infoitem);
void ClearPicture();
void onValueChanged(QVariant v);
private:
Ui::TaskPicFrame ui;
QWidget *m_pForeWidet = 0;
QVBoxLayout* m_vboxlayout = 0;
QPropertyAnimation * m_animation = 0;
int m_iForeHeight = 0;
QString m_iId = 0;
};
.cpp文件
#include "TaskPicFrame.h"
#include <QPixmap>
#include "ft/ftBasic.h"
#include <QMovie>
TaskPicFrame::TaskPicFrame(QWidget *parent)
: QLabel(parent)
{
//ui.setupUi(this);
m_vboxlayo