2025-04-21 14:29:20 +08:00
|
|
|
|
#include "maskLayer.h"
|
|
|
|
|
|
#include <QPainter>
|
|
|
|
|
|
#include <QStyleOption>
|
|
|
|
|
|
|
|
|
|
|
|
MaskLayer::MaskLayer(QWidget *parent)
|
|
|
|
|
|
: QWidget(parent)
|
|
|
|
|
|
{
|
|
|
|
|
|
setObjectName("maskLayer");
|
|
|
|
|
|
setFocusPolicy(Qt::NoFocus);
|
|
|
|
|
|
setAttribute(Qt::WA_TranslucentBackground); // 启用透明背景
|
2025-06-10 11:22:27 +08:00
|
|
|
|
setStyleSheet("background:rgba(40, 74, 102, 150);");
|
2025-04-21 14:29:20 +08:00
|
|
|
|
hide();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
MaskLayer::~MaskLayer()
|
|
|
|
|
|
{}
|
|
|
|
|
|
|
|
|
|
|
|
//重写paintEvent触发背景绘制,否则实例化对象不显示
|
|
|
|
|
|
void MaskLayer::paintEvent(QPaintEvent *event)
|
|
|
|
|
|
{
|
|
|
|
|
|
QStyleOption opt;
|
|
|
|
|
|
opt.initFrom(this);
|
|
|
|
|
|
QPainter p(this);
|
|
|
|
|
|
style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);
|
|
|
|
|
|
QWidget::paintEvent(event);
|
|
|
|
|
|
}
|