this->setStyleSheet("QFrame#MinBtn{border-image:url(:/image/index_bg_data.png);border-radius: 40px;} ");
m_labTxt.setStyleSheet("font-size: 60px;font-weight: 500;color:white;");
m_labEgTxt.setStyleSheet("font-size: 60px;font-weight:normal;color:white;");
}
MainBtn::MainBtn(QWidget * parent )
{
setWindowFlags(Qt::FramelessWindowHint); // 去掉边框
setAttribute(Qt::WA_TranslucentBackground); // 背景透明
解决方法:
#include <QStyleOption>
#include <QPaintEvent>
#include <QPainter>
class MainBtn:public QFrame
{
Q_OBJECT
public:
MainBtn(QWidget * parent =NULL);
~MainBtn();
void setTxt(QString str,QString str2,QString str3);
void paintEvent(QPaintEvent* event)
{
QStyleOption opt;
opt.init(this);
QPainter p(this);
style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);
}