Seite 1 von 1

Properties von Designer-Widgets mit enum (->QENUMS)

Verfasst: 9. November 2007 16:58
von Tilman Räger
Hallo,

Wenn ich für eine Eigenschaft eines Widgets, das ich im Designer verwenden will einen enum definiert habe und diesen mit QENUMS() in der Klassendefinition bekannt gemacht habe, kann ich im Designer diese Eigenschaften direkt mit den möglichen Werten des enums einstellen.
Dies funktioniert jedoch anscheinend leider nur dann, wenn dieses enum Member der Widget-Klasse ist, ansonsten wird zwar kein Fehler ausgegeben, die Property jedoch im Designer nicht angezeigt.

Ist es möglich, auch enums, die außerhalb der Klasse definiert sind, zu verwenden und wie muß ich da vorgehen.

Bsp:

class x : public QWidget
{
Q_OBJECT
QENUMS(TYPE)
QPROPERTY(TYPE Type, READ .... WRITE ....)

public:
enum TYPE {....};
etc.
}

funktioniert, wenn ich dieses enum TYPE außerhalb der Klasse definiere, z.B.

enum TYPE {....};

class x : public QWidget
{
Q_OBJECT
QENUMS(TYPE)
QPROPERTY(TYPE Type, READ .... WRITE ....)

public:
etc.
}

funktionert das ganze nicht.

Für alle (ernst gemeinten) Antworten schon mal im Voraus Danke.

Tilman Räger