Пример #1
0
void VUMeter::paintBorder()
{
    QPainter painter(this);
    painter.setWindow(0, 0, 50, 500);
    painter.setRenderHint(QPainter::HighQualityAntialiasing);
    QColor light = Qt::gray;
    QColor dark = colBack.darker(180);
    painter.setPen(QPen(colBack, 2, Qt::SolidLine, Qt::RoundCap, Qt::RoundJoin));
    QLinearGradient linGrad(2, 250, 10, 250);
    linGrad.setColorAt(0, light);
    linGrad.setColorAt(1, colBack);
    linGrad.setSpread(QGradient::PadSpread);
    painter.setBrush(linGrad);
    QRectF border(2, 5, 48, 490);
    painter.drawRoundRect(border, 10, 3);
    QLinearGradient linGrad1(40, 250, 48, 250);
    linGrad1.setColorAt(0, colBack);
    linGrad1.setColorAt(1, dark);
    linGrad1.setSpread(QGradient::PadSpread);
    painter.setBrush(linGrad1);
    QRectF border1(25, 5, 23, 490);
    painter.drawRoundRect(border1, 10, 3);
    // paint label
    painter.setPen(QPen(colValue, 2));
    QRectF channel(5, 450, 40, 40);
    QFont valFont("Arial", 20, QFont::Bold);
    painter.setFont(valFont);
    painter.drawText(channel, Qt::AlignCenter, label);
}
Пример #2
0
void QVUMeter::paintValue()
{
    QPainter painter(this);
    painter.setWindow(0, 0, 100, 540);
    painter.setRenderHint(QPainter::Antialiasing);

    painter.setBrush(Qt::black);
    painter.drawRect(20, 15, 25, 25);
    painter.drawRect(55, 15, 25, 25);
    painter.setPen(Qt::gray);
    painter.drawLine(20, 40, 45, 40);
    painter.drawLine(45, 15, 45, 40);
    painter.drawLine(55, 40, 80, 40);
    painter.drawLine(80, 15, 80, 40);

    painter.setPen(QPen(colValue, 1));
    QFont valFont("Arial", dimVal, QFont::Bold);
    painter.setFont(valFont);

    QRectF leftR(20, 15, 25, 25);
    QString lVal = QString("%1").arg(leftVal, 0,'f', 0);
    painter.drawText(leftR, Qt::AlignCenter, lVal);
    QRectF rightR(55, 15, 25, 25);
    QString rVal = QString("%1").arg(rightVal, 0,'f', 0);
    painter.drawText(rightR, Qt::AlignCenter, rVal);

    emit valueLChanged(leftVal);
    emit valueRChanged(rightVal);

}
Пример #3
0
void BelowsEnh::paintBorder()
{
    QPainter painter(this);
    painter.setWindow(0, 0, 100, 540);
    painter.setRenderHint(QPainter::HighQualityAntialiasing);
    QColor light = Qt::white;
    QColor dark = colBack.darker(140);

    painter.setPen(QPen(colBack, 3, Qt::SolidLine, Qt::RoundCap, Qt::RoundJoin));
    QLinearGradient linGrad(5, 250, 10, 250);
    linGrad.setColorAt(0, light);
    linGrad.setColorAt(1, colBack);
    linGrad.setSpread(QGradient::PadSpread);
    painter.setBrush(linGrad);
    QRectF border(5, 5, 90, 530);
    painter.drawRoundRect(border, 30, 5);
    QLinearGradient linGrad1(85, 250, 95, 250);
    linGrad1.setColorAt(0, colBack);
    //linGrad1.setColorAt(1, dark);
    linGrad1.setSpread(QGradient::PadSpread);
    painter.setBrush(linGrad1);
    QRectF border1(20, 5, 75, 530);
    painter.drawRoundRect(border1, 30, 5);

    // paint label

    painter.setPen(QPen(colValue, 2));
    QRectF Left(20, 505, 60, 20);
    //QRectF Right(55, 505, 25, 20);
    QFont valFont("Arial", 12, QFont::Bold);
    painter.setFont(valFont);
    painter.drawText(Left, Qt::AlignCenter, "Vent.");
    //painter.drawText(Right, Qt::AlignCenter, "R");

}
Пример #4
0
void Colorsel::paintValue()
{
    QPainter painter(this);
    painter.setWindow(0, 0, 200, 200);
    painter.setRenderHint(QPainter::Antialiasing);
    painter.setBrush(QBrush(Qt::black));

    QRectF redRect(30, 165, 20, 15);
    painter.drawRect(redRect);

    QRectF greenRect(60, 165, 20, 15);
    painter.drawRect(greenRect);

    QRectF blueRect(90, 165, 20, 15);
    painter.drawRect(blueRect);

    QRectF opRect(120, 165, 20, 15);
    painter.drawRect(opRect);

    QFont valFont("Sans Serif", 7, QFont::Bold);
    painter.setFont(valFont);
    painter.setPen(Qt::yellow);

    QString redVal = QString("%1").arg(redY,0,'f',0);
    painter.drawText(redRect, Qt::AlignCenter, redVal);

    QString greenVal = QString("%1").arg(greenY,0,'f',0);
    painter.drawText(greenRect, Qt::AlignCenter, greenVal);

    QString blueVal = QString("%1").arg(blueY,0,'f',0);
    painter.drawText(blueRect, Qt::AlignCenter, blueVal);

    QString opVal = QString("%1").arg(opY,0,'f',0);
    painter.drawText(opRect, Qt::AlignCenter, opVal);
}
Пример #5
0
void VUMeter::drawBorder(QPainter *painter)
{
    painter->save();

    QColor light = Qt::white;
    QColor dark = colorBg.darker(140);

    painter->setPen(QPen(colorBg, 3, Qt::SolidLine, Qt::RoundCap, Qt::RoundJoin));
    QLinearGradient linGrad(5, 250, 10, 250);
    linGrad.setColorAt(0, light);
    linGrad.setColorAt(1, colorBg);
    linGrad.setSpread(QGradient::PadSpread);
    painter->setBrush(linGrad);
    QRectF border(5, 5, 90, 530);
    painter->drawRoundRect(border, 30, 5);

    QLinearGradient linGrad1(85, 250, 95, 250);
    linGrad1.setColorAt(0, colorBg);
    linGrad1.setColorAt(1, dark);
    linGrad1.setSpread(QGradient::PadSpread);
    painter->setBrush(linGrad1);
    QRectF border1(20, 5, 75, 530);
    painter->drawRoundRect(border1, 30, 5);

    //绘制左右文字
    painter->setPen(QPen(colorValue, 2));
    QRectF Left(20, 505, 25, 20);
    QRectF Right(55, 505, 25, 20);
    QFont valFont("Arial", 12, QFont::Bold);
    painter->setFont(valFont);
    painter->drawText(Left, Qt::AlignCenter, "左");
    painter->drawText(Right, Qt::AlignCenter, "右");

    painter->restore();
}
Пример #6
0
void VUMeter::paintValue()
{
    QPainter painter(this);
    painter.setWindow(0, 0, 50, 500);
    painter.setRenderHint(QPainter::TextAntialiasing);
    painter.setBrush(Qt::black);
    painter.drawRect(5, 10, 40, 35);
    painter.setPen(Qt::gray);
    painter.drawLine(5, 45, 45, 45);
    painter.drawLine(45, 10, 45, 45);

    painter.setPen(QPen(colValue, 1));
    QFont valFont("Arial", dimVal, QFont::Bold);
    painter.setFont(valFont);

    QRectF valR(5, 10, 40, 40);
    QString value = QString("%1").arg(val, 0);
    painter.drawText(valR, Qt::AlignCenter, value);
}
Пример #7
0
void VUMeter::drawValue(QPainter *painter)
{
    painter->save();

    //绘制左右音量值背景
    painter->setBrush(Qt::black);
    painter->drawRect(20, 15, 25, 25);
    painter->drawRect(55, 15, 25, 25);

    //绘制左右音量值背景右侧突出线条,形成立体感
    painter->setPen(Qt::gray);
    painter->drawLine(20, 40, 45, 40);
    painter->drawLine(45, 15, 45, 40);
    painter->drawLine(55, 40, 80, 40);
    painter->drawLine(80, 15, 80, 40);

    //设置音量值字体
    painter->setPen(QPen(colorValue, 1));
    QFont valFont("Arial", 12, QFont::Bold);
    painter->setFont(valFont);

    //绘制左音量值
    QRectF leftR(20, 15, 25, 25);
    QString lVal = QString("%1").arg(leftValue, 0, 'f', 0);
    painter->drawText(leftR, Qt::AlignCenter, lVal);

    //绘制右音量值
    QRectF rightR(55, 15, 25, 25);
    QString rVal = QString("%1").arg(rightValue, 0, 'f', 0);
    painter->drawText(rightR, Qt::AlignCenter, rVal);

    painter->restore();

    //发送音量值改变信号
    emit valueLChanged(leftValue);
    emit valueRChanged(rightValue);
}