我把这个pushubutton单独定义出来(类名是PaintPat),继承于QPushButton,构造函数和paintEvent入下,问题是按钮效果不见了,变成了flat效果.
PaintPat::PaintPat()
{
setFixedSize(QSize(240, 240));
image = QImage(240, 240, QImage::Format_RGB16);
backColor = qRgb(255,255,255);
image.fill(backColor);
}
void PaintPat::paintEvent(QPaintEvent *)
{
QPainter painter(this);
painter.drawImage(0, 0, image);
}