回复: 如何用一个变量值改变时emit 一个signals
#11 [dbzhang800 09-07 12:29]
都是程序员,在代码世界里,没有什么东西是自动的。要什么效果,直接写就是了。
比如,Qt手册中的例子
class MyClass : public QObject
{
Q_OBJECT
Q_PROPERTY(Priority priority READ priority WRITE setPriority NOTIFY priorityChanged)
public:
MyClass(QObject *parent = nullptr);
~MyClass();
enum Priority { High, Low, VeryHigh, VeryLow };
Q_ENUM(Priority)
void setPriority(Priority priority)
{
if (priority == m_priority)
return;
m_priority = priority;
emit priorityChanged(priority);
}
Priority priority() const
{ return m_priority; }
signals:
void priorityChanged(Priority);
private:
Priority m_priority;
};