一对一直播系统开发如何用Qt5QPainter做出仅边框效果
一对一直播系统开发用Qt5QPainter实现金边框效果的相关代码
void paintEvent(QPaintEvent *event) { QPainter painter(this); painter.setRenderHint(QPainter::Antialiasing); // 设置反锯齿; // 通过MouseEnterEvent() & MouseLeaveEvent()函数检查是否鼠标在此Widget上 if (!isHovered) { // 如鼠标进去此Widget时,边框改变颜色 const QColor color(50, 50, 63); painter.setPen(color); } else { // 如鼠标离开此Widget时,边框改变颜色 const QColor color(86, 85, 96); painter.setPen(color); } painter.setBrush(QBrush(Qt::transparent)); // 设置填充颜色为透明 QRect rect = this->rect(); rect.setWidth(rect.width() - 1); rect.setHeight(rect.height() - 1); painter.drawRoundedRect(rect, 8, 8); // 绘制带圆角的矩形 QWidget::paintEvent(event); }
void paintEvent(QPaintEvent *event)
{
QPainter painter(this);
painter.setRenderHint(QPainter::Antialiasing); // 设置反锯齿;
// 通过MouseEnterEvent() & MouseLeaveEvent()函数检查是否鼠标在此Widget上
if (!isHovered)
{
// 如鼠标进去此Widget时,边框改变颜色
const QColor color(50, 50, 63);
painter.setPen(color);
}
else
{
// 如鼠标离开此Widget时,边框改变颜色
const QColor color(86, 85, 96);
painter.setPen(color);
}
painter.setBrush(QBrush(Qt::transparent)); // 设置填充颜色为透明
QRect rect = this->rect();
rect.setWidth(rect.width() - 1);
rect.setHeight(rect.height() - 1);
painter.drawRoundedRect(rect, 8, 8); // 绘制带圆角的矩形
QWidget::paintEvent(event);
}
以上就是 一对一直播系统开发用Qt5QPainter实现金边框效果的相关代码,更多内容欢迎关注之后的文章