سؤال

أنا أستخدم QPropertyEditor من Qt-apps.org.

هل من الممكن إنشاء فئة مع خصائص مكشوفة حيث تكون كمية العقارات ديناميكية وقت التشغيل؟ لذلك على سبيل المثال، لديك فئة تمثل متجها من العوامات مع طول التعسفي غير معروف في وقت الترجمة. لذلك لديك

vector<float> myFloats;

كعضو فئة. كيفية تعريض هذا بمثابة خاصية مع الماكرو Q_Property. لذلك في النهاية أحب العرض التالي في Widget محرر الخاصية:

  • صفي
    • قيمة MyFloats [0
    • قيمة MyFloats [1
    • قيمة MyFloats [2] ... ...

شكرا مقدما!

هل كانت مفيدة؟

المحلول

باستخدام خصائص ديناميكية ...

في صفك، يمكنك تعيين في وقت التشغيل الخصائص الديناميكية لتلك الفئة

DynamicPropertiesClassForQPropertyEditor()
{
    QVector<int> properties;
    ///.... fill in thevalues
    for (int i=0 ; i!=properties.size() ; ++i )
    {
        const QString propertyName = QString( "value of properties[%1]").arg(i);
        setProperty( qPrintable(propertyName) ,properties.at(i) );
    }
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top