123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- #include "VLabel.h"
- VLabel::VLabel(
- QWidget* parent,
- const QPoint& pos,
- const QSize& size,
- CONTROL_PROPERTY* pProperty
- )
- : QLabel(parent)
- , VControlObject(pProperty)
- {
- // 设置默认属性(初始化值或者外部传入值)
- if (m_Property.m_strText.isEmpty())
- {
- m_Property.m_strText = "Label";
- }
- QLabel::setText(m_Property.m_strText);
- QLabel::setToolTip(m_Property.m_strTip);
- this->setTextColor(m_Property.m_clrText);
- this->setBgColor(m_Property.m_clrBg);
- QLabel::setFont(m_Property.m_Font);
- QLabel::setEnabled(m_Property.m_bEnable);
- // 设置尺寸
- if (size == DEFAULT_CONTROL_SIZE)
- {
- this->resize(DEFAULT_LABEL_SIZE);
- }
- else
- {
- this->resize(size);
- }
- // 设置中心点坐标
- QPoint tempPos;
- tempPos.setX(pos.x() - width() / 2);
- tempPos.setY(pos.y() - height() / 2);
- // 设置位置
- this->move(tempPos);
- m_pWidget = this;
- m_Type = VALUE_TYPE::Control_Label;
- }
- VLabel::~VLabel()
- {
- }
- // 属性的实现函数
- void VLabel::setText(const QString& title)
- {
- qDebug() << m_Property.m_strText;
- if (this->m_Property.m_strText != title)
- {
- this->m_Property.m_strText = title;
- QLabel::setText(title);
- }
- }
- void VLabel::setTip(const QString& tip)
- {
- if (this->m_Property.m_strTip != tip)
- {
- this->m_Property.m_strTip = tip;
- QLabel::setToolTip(tip);
- }
- }
- void VLabel::setTextColor(const QColor& color)
- {
- QString qss = VControlObject::textColorQss(color);
- this->setStyleSheet(qss);
- }
- void VLabel::setBgColor(const QColor& color)
- {
- QString qss = VControlObject::bgColorQss(color);
- this->setStyleSheet(qss);
- }
- void VLabel::setFont(const QFont& font)
- {
- if (this->m_Property.m_Font != font)
- {
- this->m_Property.m_Font = font;
- QLabel::setFont(font);
- }
- }
- void VLabel::setEnable(const bool enable)
- {
- if (this->m_Property.m_bEnable != enable)
- {
- this->m_Property.m_bEnable = enable;
- QLabel::setEnabled(enable);
- }
- }
|