您的位置:首页 > 编程语言 > Qt开发

Qt的属性Properties例子代码

2007-07-10 08:59 423 查看
#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要打引号???
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: