0
点赞
收藏
分享

微信扫一扫

Qt之Widgets动态控件


Qt的动画控件可以做很多动画的效果

Qt之Widgets动态控件_ico


Qt之Widgets动态控件_qt_02


Qt之Widgets动态控件_ide_03


Qt之Widgets动态控件_ide_04


Qt之Widgets动态控件_qt_05


Qt之Widgets动态控件_qt_06


Qt之Widgets动态控件_qt_07


Qt之Widgets动态控件_ico_08


Qt之Widgets动态控件_ide_09


Qt之Widgets动态控件_qt_10


Qt之Widgets动态控件_#include_11


Qt之Widgets动态控件_qt_12


Qt之Widgets动态控件_#include_13


Qt之Widgets动态控件_qt_14

#ifndef QTMATERIALCHECKABLE_INTERNAL_H
#define QTMATERIALCHECKABLE_INTERNAL_H

#include <QtWidgets/QWidget>
#include <QColor>
#include <QIcon>

class QtMaterialCheckable;

class QtMaterialCheckableIcon : public QWidget
{
Q_OBJECT

Q_PROPERTY(QColor color READ color WRITE setColor)
Q_PROPERTY(qreal iconSize READ iconSize WRITE setIconSize)
Q_PROPERTY(qreal opacity READ opacity WRITE setOpacity)

public:
QtMaterialCheckableIcon(const QIcon &icon, QtMaterialCheckable *parent);
~QtMaterialCheckableIcon();

QSize sizeHint() const Q_DECL_OVERRIDE;

inline void setIcon(const QIcon &icon);
inline QIcon icon() const;

inline void setColor(const QColor &color);
inline QColor color() const;

inline void setIconSize(qreal size);
inline qreal iconSize() const;

inline void setOpacity(qreal opacity);
inline qreal opacity() const;

protected:
void paintEvent(QPaintEvent *event) Q_DECL_OVERRIDE;

private:
Q_DISABLE_COPY(QtMaterialCheckableIcon)

QtMaterialCheckable *const m_checkable;
QColor m_color;
QIcon m_icon;
qreal m_iconSize;
qreal m_opacity;
};

inline void QtMaterialCheckableIcon::setIcon(const QIcon &icon)
{
m_icon = icon;
update();
}

inline QIcon QtMaterialCheckableIcon::icon() const
{
return m_icon;
}

inline void QtMaterialCheckableIcon::setColor(const QColor &color)
{
m_color = color;
update();
}

inline QColor QtMaterialCheckableIcon::color() const
{
return m_color;
}

inline void QtMaterialCheckableIcon::setIconSize(qreal size)
{
m_iconSize = size;
update();
}

inline qreal QtMaterialCheckableIcon::iconSize() const
{
return m_iconSize;
}

inline void QtMaterialCheckableIcon::setOpacity(qreal opacity)
{
m_opacity = opacity;
update();
}

inline qreal QtMaterialCheckableIcon::opacity() const
{
return m_opacity;
}

#endif // QTMATERIALCHECKABLE_INTERNAL_H


举报

相关推荐

0 条评论