QLCDNumber设置背景色和显示数字颜色

来源:互联网 发布:微信mp网络推广 编辑:程序博客网 时间:2024/05/22 00:20
//LCD时间显示    QLCDNumber *m_pLcdTime = new QLCDNumber(this);    //设置显示几个数字    m_pLcdTime->setDigitCount(19);    //设置数字字体:Outline,轮廓突出,颜色为背景色;Filled,内部填充型,颜色为黑色;Flat,平面型    m_pLcdTime->setSegmentStyle(QLCDNumber::Flat);    //调色板    QPalette lcdpat = m_pLcdTime->palette();    /*设置颜色,整体背景颜色 颜色蓝色,此函数的第一个参数可以设置多种。如文本、按钮按钮文字、多种*/    lcdpat.setColor(QPalette::Normal,QPalette::WindowText,Qt::red);    //设置当前窗口的调色板    m_pLcdTime->setPalette(lcdpat);    //设置背景色    m_pLcdTime->setStyleSheet("background-color: yellow");    m_pLcdTime->display(QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss"));    设置数字颜色时要注意:  函数setSegmentStyle(QLCDNumber::Flat)中选择Flat属性,否则在setColor()设置数字颜色时不生效    设置背景色直接用setStyleSheet()函数设定就可以了。--------------------------------------------------------------------------------void frmShowAPI::InitForm(){int icoWidth = 100;int icoHeight = 20;ui->cboxColor->setSizeAdjustPolicy(QComboBox::AdjustToContents);colorList = QColor::colorNames();foreach (QString color, colorList) {QPixmap pix(QSize(icoWidth, icoHeight));pix.fill(color);ui->cboxColor->addItem(QIcon(pix), color);ui->cboxColor->setIconSize(QSize(icoWidth, icoHeight));}connect(ui->cboxColor, SIGNAL(currentIndexChanged(int)), this, SLOT(ChangeColor()));}void frmShowAPI::ChangeColor(){QString colorName = colorList.at(ui->cboxColor->currentIndex());    QString qss = QString("QLCDNumber{background-color: rgb(0, 0, 0);color:%1;}").arg(colorName);ui->lcdNumber->setStyleSheet(qss);}

原创粉丝点击