一對一直播系統開發如何用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實現金邊框效果的相關程式碼,更多內容歡迎關注之後的文章