使用paintEvent设置上半圆角窗口
void ImgWidget::paintEvent(QPaintEvent *event)
{
Q_UNUSED(event)
QPainter painter(this);
painter.setRenderHints(QPainter::Antialiasing | QPainter::TextAntialiasing,true);
painter.setPen(Qt::NoPen);
QPainterPath m_clipPath;
QRect rectT = rect();
qreal x = rectT.x();
qreal y = rectT.y();
qreal w = rectT.width();
qreal h = rectT.height();
qreal rxx2 = 8;
qreal ryy2 = 8;
m_clipPath.arcMoveTo(x, y, rxx2, ryy2, 180);
m_clipPath.arcTo(x, y, rxx2, ryy2, 180, -90);
m_clipPath.arcTo(x+w-rxx2, y, rxx2, ryy2, 90, -90);
m_clipPath.lineTo(x+w,y+h);
m_clipPath.lineTo(x,y+h);
// -----底部圆角设置
// m_clipPath.arcTo(x+w-rxx2, y+h-ryy2, rxx2, ryy2, 0, -90);
// m_clipPath.arcTo(x, y+h-ryy2, rxx2, ryy2, 270, -90);
m_clipPath.closeSubpath();
painter.setClipPath(m_clipPath);
painter.