Domanda

I've a class, derived of QObject and it has some members. I load a configuration file with param value syntax. Each param is a member of the class and I want to set it's value to value.

How is it possible, if it actually is? Thanks much!

PS I could have made an associative array but it's not the way I prefer.

È stato utile?

Soluzione

You have two ways of doing this:

  1. Declare your members as properties by using the Q_PROPERTY macro. Then you can set it by name using QObject::setProperty(..).
  2. Declare a setter method with the property name (plus a 'set' prepended for example) and the Q_INVOKABLE macro (or just make it a slot), then use QMetaObject::invokeMethod(..) to call it by name.

Altri suggerimenti

It's not possible in c++. The only way is an associative array

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top