C++ QList作为qt设计器自定义小部件中的属性
我定义了一个自定义小部件,基本上是添加到QLabel中。简单(Qstring和enum)属性正常,并显示在我的QT设计器中 我现在尝试添加一个属性,它是一个列表 因此,我声明我的财产为:C++ QList作为qt设计器自定义小部件中的属性,c++,qt,qlist,C++,Qt,Qlist,我定义了一个自定义小部件,基本上是添加到QLabel中。简单(Qstring和enum)属性正常,并显示在我的QT设计器中 我现在尝试添加一个属性,它是一个列表 因此,我声明我的财产为: Q_PROPERTY(QList<int> points READ getpoints ) Q_属性(QList points READ getpoints) 我有我的私有变量QList m_points 但是,我无法在QT designer属性编辑器中看到我的points属性。而且,我不知道
Q_PROPERTY(QList<int> points READ getpoints )
Q_属性(QList points READ getpoints)
我有我的私有变量QList m_points代码>
但是,我无法在QT designer属性编辑器中看到我的points属性。而且,我不知道出了什么问题
我尝试添加可指定标志,但它没有任何作用
有线索吗 问题源于我忘记了属性中的写入部分
在Q_属性中添加set方法和Write就成功了。是否有方法“QList getpoints()”?是的。它返回私有变量。可能是因为QVariant类型系统不包装任意列表。您至少需要将列表包装在typedef中,并将其声明为新的可流化元类型。在QVariant和QDataStream中查找要执行的操作。@Kuba Ober typedef真的有必要吗?我认为,一旦正确声明了QVariant,它应该可以很好地处理这个类型。