Qt enum使用

举例:


Qt类中 public属性加入

    enum T {        A,B,C,D    };
    Q_ENUM(T)

cpp中:
#include

QMetaObject mo = xx::staticMetaObject;
int index = mo.indexOfEnumerator("T");    
QMetaEnum metaEnum = mo.enumerator(index);
 or

QMetaEnum metaEnum = QMetaEnum::fromType();


for (int i=0; i {                
    qDebug() << metaEnum.key(i);    
}
  qDebug()<<  metaEnum.valueToKey(A);            //  enum转string
  qDebug()<<  metaEnum.keysToValue("A");       //  string转enum

你可能感兴趣的:(Qt enum使用)