QMetaEnum Class
Die Klasse QMetaEnum liefert Metadaten über einen Enumerator. Mehr...
Kopfzeile: | #include <QMetaEnum> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
Öffentliche Funktionen
const char * | enumName() const |
bool | isFlag() const |
bool | isScoped() const |
bool | isValid() const |
const char * | key(int index) const |
int | keyCount() const |
int | keyToValue(const char *key, bool *ok = nullptr) const |
int | keysToValue(const char *keys, bool *ok = nullptr) const |
(since 6.6) QMetaType | metaType() const |
const char * | name() const |
const char * | scope() const |
int | value(int index) const |
const char * | valueToKey(int value) const |
QByteArray | valueToKeys(int value) const |
Statische öffentliche Mitglieder
QMetaEnum | fromType() |
Detaillierte Beschreibung
Verwenden Sie name() für den Namen des Zählers. Die Schlüssel des Zählers (Namen der einzelnen Aufzählungselemente) werden von key() zurückgegeben; verwenden Sie keyCount(), um die Anzahl der Schlüssel zu ermitteln. isFlag() gibt zurück, ob der Enumerator als Flag verwendet werden soll, was bedeutet, dass seine Werte mit dem OR-Operator kombiniert werden können.
Die Konvertierungsfunktionen keyToValue(), valueToKey(), keysToValue() und valueToKeys() ermöglichen die Konvertierung zwischen der ganzzahligen Darstellung eines Aufzählungs- oder Mengenwerts und seiner literalen Darstellung. Die Funktion scope() gibt den Klassenbereich zurück, in dem dieser Aufzählungswert deklariert wurde.
Siehe auch QMetaObject, QMetaMethod, und QMetaProperty.
Dokumentation der Mitgliedsfunktionen
const char *QMetaEnum::enumName() const
Gibt den Enum-Namen des Flags zurück (ohne den Bereich).
Das Flag Qt::AlignmentFlag hat zum Beispiel AlignmentFlag
als Enum-Namen, aber Alignment
als Typnamen. Nicht-Flag-Enums haben denselben Typ- und Enum-Namen.
Enum-Namen haben denselben Geltungsbereich wie der Typname.
Siehe auch isValid() und name().
[static]
template <typename T> QMetaEnum QMetaEnum::fromType()
Gibt die QMetaEnum zurück, die dem Typ im Template-Parameter entspricht. Die Aufzählung muss mit Q_ENUM deklariert werden.
bool QMetaEnum::isFlag() const
Gibt true
zurück, wenn dieser Zähler als Flag verwendet wird; andernfalls wird false zurückgegeben.
Wenn sie als Flags verwendet werden, können Aufzählungszeichen mit dem Operator OR kombiniert werden.
Siehe auch keysToValue() und valueToKeys().
bool QMetaEnum::isScoped() const
Gibt true
zurück, wenn dieser Enumerator als C++11-Enum-Klasse deklariert ist; andernfalls wird false zurückgegeben.
bool QMetaEnum::isValid() const
Gibt true
zurück, wenn diese Aufzählung gültig ist (einen Namen hat); andernfalls wird false zurückgegeben.
Siehe auch name().
const char *QMetaEnum::key(int index) const
Gibt den Schlüssel mit dem angegebenen index zurück, oder nullptr
, wenn kein solcher Schlüssel existiert.
Siehe auch keyCount(), value(), und valueToKey().
int QMetaEnum::keyCount() const
Gibt die Anzahl der Schlüssel zurück.
Siehe auch key().
int QMetaEnum::keyToValue(const char *key, bool *ok = nullptr) const
Gibt den ganzzahligen Wert der angegebenen Aufzählung key zurück, oder -1, wenn key nicht definiert ist.
Wenn key nicht definiert ist, * wirdok auf false gesetzt; andernfalls * wirdok auf true gesetzt.
Für Flag-Typen, verwenden Sie keysToValue().
Siehe auch valueToKey(), isFlag(), und keysToValue().
int QMetaEnum::keysToValue(const char *keys, bool *ok = nullptr) const
Gibt den Wert zurück, der sich aus der Kombination der Werte von keys unter Verwendung des OR-Operators ergibt, oder -1, wenn keys nicht definiert ist. Beachten Sie, dass die Zeichenketten in keys durch '|' getrennt sein müssen.
Wenn keys nicht definiert ist, * wirdok auf false gesetzt; andernfalls * wirdok auf true gesetzt.
Siehe auch isFlag(), valueToKey(), und valueToKeys().
[since 6.6]
QMetaType QMetaEnum::metaType() const
Gibt den Meta-Typ der Aufzählung zurück.
Wenn die QMetaObject, zu der diese Aufzählung gehört, mit Qt 6.5 oder früher erzeugt wurde, ist dies ein ungültiger Metatyp.
Hinweis: Dies ist der Metatyp der Enum selbst, nicht der des zugrundeliegenden Integraltyps. Sie können den Metatyp des zugrundeliegenden Typs der Enum mit QMetaType::underlyingType() abrufen.
Diese Funktion wurde in Qt 6.6 eingeführt.
const char *QMetaEnum::name() const
Gibt den Namen des Typs (ohne den Bereich) zurück.
Die Aufzählung Qt::Key hat zum Beispiel Key
als Typnamen und Qt als Geltungsbereich.
Bei Flags wird der Name des Flag-Typs zurückgegeben, nicht der Name des Aufzählungstyps.
Siehe auch isValid(), scope(), und enumName().
const char *QMetaEnum::scope() const
Gibt den Bereich zurück, in dem dieser Aufzähler deklariert wurde.
Zum Beispiel hat die Aufzählung Qt::AlignmentFlag Qt
als Bereich und AlignmentFlag
als Name.
Siehe auch name().
int QMetaEnum::value(int index) const
Liefert den Wert mit dem angegebenen index; oder gibt -1 zurück, wenn es keinen solchen Wert gibt.
Siehe auch keyCount(), key(), und keyToValue().
const char *QMetaEnum::valueToKey(int value) const
Gibt die Zeichenkette zurück, die als Name für die angegebene Aufzählung value verwendet wird, oder nullptr
, wenn value nicht definiert ist.
Für Flag-Typen, verwenden Sie valueToKeys().
Siehe auch isFlag() und valueToKeys().
QByteArray QMetaEnum::valueToKeys(int value) const
Gibt ein Byte-Array mit '|'-getrennten Schlüsseln zurück, das die angegebene value repräsentiert.
Siehe auch isFlag(), valueToKey(), und keysToValue().
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.