属性(Properties)
QObject有getter和setter函数属性
命名策略: color, setColor
对于布尔: isEnabled, setEnabled
class QLabel : public QFrame
{
Q_OBJECT
Q_PROPERTY(QString text READ text WRITE setText)
public:
QString text() const;
public slots:
void setText(const QString &);
};
Setter, 返回空,
将值当成唯一参数
Getter, 常量,返回值,
没有参数
*
一个通用特性是Qt属性系统。如果你已经看过QtCreator的Designer部分,你大概已经不知觉间用到它了。这样你就有每个类可以轻易使用的属性的列表了。
属性由getter和setter函数实现,所以实际值作为私有成员存储。
以下为约定俗成:
Getter在属性(不是get前缀)后面命名,或对于布尔则附带is前缀。
Setter以set前缀命名。
然后这一对函数利用Q_PROPERTY宏制而转化成一个Qt属性(参数:type,name,“READ”,getter,“WRITE”,setter)
待续
2024-03-12 15:21:56
1.84MB
对象模型
1