| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- #include "xlabel.h"
- XLabel::XLabel(QWidget *parent) :
- QLabel(parent)
- {
- m_v = 0;
- }
- void XLabel::setValue(int v)
- {
- m_v = v;
- update();
- }
- void XLabel::paintEvent(QPaintEvent *e)
- {
- QLabel::paintEvent(e);
- if(m_v>0)
- {
- QPainter painter(this);
- QRect rect(10,-2,18,18);
- QFont font("Arial",8,QFont::Bold,false);
- painter.setPen(QColor(Qt::red));
- painter.setBrush(QBrush(Qt::red,Qt::SolidPattern));
- painter.drawEllipse(10,0,15,15);
- painter.setPen(QColor(Qt::white));
- painter.setFont(font);
- if(m_v>=10)
- painter.drawText(rect,Qt::AlignCenter|Qt::AlignVCenter,"9+");
- else
- painter.drawText(rect,Qt::AlignCenter|Qt::AlignVCenter,QString::number(m_v));
- }
- return;
- }
- void XLabel::resizeEvent(QResizeEvent *e)
- {
- QLabel::resizeEvent(e);
- }
|