给窗口/控件画外边框 QPainter

void ComWidget::paintEvent(QPaintEvent *e)
{
QPainter painter(this);
QPen pen;
pen.setColor(Qt::darkGray);
pen.setWidth(2);
painter.setPen(pen);
painter.drawRect(this->rect());
painter.end();
}
默认画笔宽度为1,此时边框线只有左边和上边有,而右边和下边被遮盖了。
方案1:设置画笔宽度大于1即可。
pen.setWidth(2);
方案2:宽,高 -1
painter.drawRect(this->rect().x(),this->rect().y(),this->rect().width()-1,this->rect().height()-1,);

你可能感兴趣的:(QPinter,Qt)