#ifndef MYCLASS_H
//myclass.h
#define MYCLASS_H
#include <qobject.h>
class MyClass : public QObject
{
Q_OBJECT
Q_PROPERTY( Priority priority READ priority WRITE setPriority )
Q_ENUMS( Priority )
public:
MyClass( QObject *parent = 0, const char *name = 0 );
~MyClass();
enum Priority { High, Low, VeryHigh, VeryLow };
void setPriority( Priority );
Priority priority() const;
private:
Priority m_priority;
};
#endif
//myclass.cpp
#include "myclass.h"
MyClass::MyClass( QObject *parent, const char *name )
:QObject( parent, name)
{
m_priority = High;
}
MyClass::~MyClass()
{
}
void MyClass::setPriority( Priority p )
{
m_priority = p;
}
MyClass::Priority MyClass::priority() const
{
return m_priority;
}
//使用
MyClass *obj = new MyClass( &w );
obj->setProperty( "priority", "Low" );
搞不懂为什么Low要打引号???
//myclass.h
#define MYCLASS_H
#include <qobject.h>
class MyClass : public QObject
{
Q_OBJECT
Q_PROPERTY( Priority priority READ priority WRITE setPriority )
Q_ENUMS( Priority )
public:
MyClass( QObject *parent = 0, const char *name = 0 );
~MyClass();
enum Priority { High, Low, VeryHigh, VeryLow };
void setPriority( Priority );
Priority priority() const;
private:
Priority m_priority;
};
#endif
//myclass.cpp
#include "myclass.h"
MyClass::MyClass( QObject *parent, const char *name )
:QObject( parent, name)
{
m_priority = High;
}
MyClass::~MyClass()
{
}
void MyClass::setPriority( Priority p )
{
m_priority = p;
}
MyClass::Priority MyClass::priority() const
{
return m_priority;
}
//使用
MyClass *obj = new MyClass( &w );
obj->setProperty( "priority", "Low" );
搞不懂为什么Low要打引号???