QItemModelBarDataProxy Class
Proxy-Klasse zur Darstellung von Daten in Item-Modellen mit „ Q3DBarsWidgetItem “. Mehr...
| Header: | #include <QItemModelBarDataProxy> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Graphs) target_link_libraries(mytarget PRIVATE Qt6::Graphs) |
| qmake: | QT += graphs |
| In QML: | ItemModelBarDataProxy |
| Erbt von: | QBarDataProxy |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- QItemModelBarDataProxy ist Teil der C++-Klassen „Qt Graphs “ für 3D.
Öffentliche Typen
| enum class | MultiMatchBehavior { First, Last, Average, Cumulative } |
Eigenschaften
|
|
Öffentliche Funktionen
| QItemModelBarDataProxy(QObject *parent = nullptr) | |
| QItemModelBarDataProxy(QAbstractItemModel *itemModel, QObject *parent = nullptr) | |
| QItemModelBarDataProxy(QAbstractItemModel *itemModel, const QString &valueRole, QObject *parent = nullptr) | |
| QItemModelBarDataProxy(QAbstractItemModel *itemModel, const QString &rowRole, const QString &columnRole, const QString &valueRole, QObject *parent = nullptr) | |
| QItemModelBarDataProxy(QAbstractItemModel *itemModel, const QString &rowRole, const QString &columnRole, const QString &valueRole, const QString &rotationRole, QObject *parent = nullptr) | |
| QItemModelBarDataProxy(QAbstractItemModel *itemModel, const QString &rowRole, const QString &columnRole, const QString &valueRole, const QStringList &rowCategories, const QStringList &columnCategories, QObject *parent = nullptr) | |
| QItemModelBarDataProxy(QAbstractItemModel *itemModel, const QString &rowRole, const QString &columnRole, const QString &valueRole, const QString &rotationRole, const QStringList &rowCategories, const QStringList &columnCategories, QObject *parent = nullptr) | |
| virtual | ~QItemModelBarDataProxy() override |
| bool | autoColumnCategories() const |
| bool | autoRowCategories() const |
| QStringList | columnCategories() const |
| qsizetype | columnCategoryIndex(const QString &category) |
| QString | columnRole() const |
| QRegularExpression | columnRolePattern() const |
| QString | columnRoleReplace() const |
| QAbstractItemModel * | itemModel() const |
| QItemModelBarDataProxy::MultiMatchBehavior | multiMatchBehavior() const |
| void | remap(const QString &rowRole, const QString &columnRole, const QString &valueRole, const QString &rotationRole, const QStringList &rowCategories, const QStringList &columnCategories) |
| QString | rotationRole() const |
| QRegularExpression | rotationRolePattern() const |
| QString | rotationRoleReplace() const |
| QStringList | rowCategories() const |
| qsizetype | rowCategoryIndex(const QString &category) |
| QString | rowRole() const |
| QRegularExpression | rowRolePattern() const |
| QString | rowRoleReplace() const |
| void | setAutoColumnCategories(bool enable) |
| void | setAutoRowCategories(bool enable) |
| void | setColumnCategories(const QStringList &categories) |
| void | setColumnRole(const QString &role) |
| void | setColumnRolePattern(const QRegularExpression &pattern) |
| void | setColumnRoleReplace(const QString &replace) |
| void | setItemModel(QAbstractItemModel *itemModel) |
| void | setMultiMatchBehavior(QItemModelBarDataProxy::MultiMatchBehavior behavior) |
| void | setRotationRole(const QString &role) |
| void | setRotationRolePattern(const QRegularExpression &pattern) |
| void | setRotationRoleReplace(const QString &replace) |
| void | setRowCategories(const QStringList &categories) |
| void | setRowRole(const QString &role) |
| void | setRowRolePattern(const QRegularExpression &pattern) |
| void | setRowRoleReplace(const QString &replace) |
| void | setUseModelCategories(bool enable) |
| void | setValueRole(const QString &role) |
| void | setValueRolePattern(const QRegularExpression &pattern) |
| void | setValueRoleReplace(const QString &replace) |
| bool | useModelCategories() const |
| QString | valueRole() const |
| QRegularExpression | valueRolePattern() const |
| QString | valueRoleReplace() const |
Signale
| void | autoColumnCategoriesChanged(bool enable) |
| void | autoRowCategoriesChanged(bool enable) |
| void | columnCategoriesChanged() |
| void | columnRoleChanged(const QString &role) |
| void | columnRolePatternChanged(const QRegularExpression &pattern) |
| void | columnRoleReplaceChanged(const QString &replace) |
| void | itemModelChanged(const QAbstractItemModel *itemModel) |
| void | multiMatchBehaviorChanged(QItemModelBarDataProxy::MultiMatchBehavior behavior) |
| void | rotationRoleChanged(const QString &role) |
| void | rotationRolePatternChanged(const QRegularExpression &pattern) |
| void | rotationRoleReplaceChanged(const QString &replace) |
| void | rowCategoriesChanged() |
| void | rowRoleChanged(const QString &role) |
| void | rowRolePatternChanged(const QRegularExpression &pattern) |
| void | rowRoleReplaceChanged(const QString &replace) |
| void | useModelCategoriesChanged(bool enable) |
| void | valueRoleChanged(const QString &role) |
| void | valueRolePatternChanged(const QRegularExpression &pattern) |
| void | valueRoleReplaceChanged(const QString &replace) |
Ausführliche Beschreibung
Mit `QItemModelBarDataProxy` können Sie von ` QAbstractItemModel ` abgeleitete Modelle als Datenquelle für ` Q3DBarsWidgetItem` verwenden. Es nutzt die definierten Zuordnungen, um Daten aus dem Modell den Zeilen, Spalten und Werten des ` Q3DBarsWidgetItem `-Diagramms zuzuordnen.
Die Daten werden asynchron aufgelöst, sobald sich Zuordnungen oder das Modell ändern. „ QBarDataProxy::arrayReset()“ wird ausgelöst, sobald die Daten aufgelöst wurden. Wenn jedoch die Eigenschaft „ useModelCategories “ auf „true“ gesetzt ist, werden Änderungen einzelner Elemente synchron aufgelöst, es sei denn, derselbe Frame enthält auch eine Änderung, die eine Auflösung des gesamten Modells auslöst.
Zuordnungen können auf folgende Weise verwendet werden:
- Wenn die Eigenschaft ` useModelCategories ` auf `true` gesetzt ist, ordnet dieser Proxy Zeilen und Spalten von ` QAbstractItemModel ` direkt den Zeilen und Spalten von ` Q3DBarsWidgetItem` zu und verwendet standardmäßig den für ` Qt::DisplayRole ` zurückgegebenen Wert als Balkenwert. Die zu verwendende Wertrolle kann neu definiert werden, falls ` Qt::DisplayRole ` nicht geeignet ist.
- Bei Modellen, deren Daten nicht bereits übersichtlich in Zeilen und Spalten sortiert sind, wie z. B. bei Modellen auf Basis von „ QAbstractListModel “, können Sie für jede Zeile, Spalte und jeden Wert eine Zuordnungsrolle aus dem Modell definieren.
- Wenn Sie nicht alle im Modell enthaltenen Daten einbeziehen möchten oder die automatisch generierten Zeilen und Spalten nicht wie gewünscht angeordnet sind, können Sie festlegen, welche Zeilen und Spalten in welcher Reihenfolge berücksichtigt werden sollen, indem Sie eine explizite Liste von Kategorien entweder für Zeilen oder für Spalten oder für beide definieren.
Nehmen wir beispielsweise an, Sie haben ein benutzerdefiniertes „ QAbstractItemModel “, in dem verschiedene monatliche Werte im Zusammenhang mit einem Unternehmen gespeichert sind. Jeder Eintrag im Modell hat die Rollen „Jahr“, „Monat“, „Einnahmen“ und „Ausgaben“. Um die Daten in einem Balkendiagramm darzustellen, könnten Sie wie folgt vorgehen:
// By defining row and column categories, you tell the mapping which row and column each item
// belongs to. The categories must match the data stored in the model in the roles you define
// for row and column mapping. In this example we expect "year" role to return four digit year
// and "month" to return three letter designation for the month.
//
// An example of an item in model would be:
// Requested role -> Returned data
// "year" -> "2016" // Matches the first row category, so this item is added to the first row.
// "month" -> "jan" // Matches the first column category, so this item is added as first item in the row.
// "income" -> "12.1"
// "expenses" -> "9.2"
QStringList years;
QStringList months;
years << "2016" << "2017" << "2018" << "2019" << "2020" << "2021" << "2022";
months << "jan" << "feb" << "mar" << "apr" << "may" << "jun" << "jul" << "aug" << "sep" << "oct" << "nov" << "dec";
QItemModelBarDataProxy *proxy = new QItemModelBarDataProxy(customModel,
QStringLiteral("year"), // Row role
QStringLiteral("month"), // Column role
QStringLiteral("income"), // Value role
years, // Row categories
months); // Column categories
//...
// To display different data later, you can simply change the mapping.
proxy->setValueRole(QStringLiteral("expenses"));Wenn die Felder des Modells die Daten nicht in genau dem von Ihnen benötigten Format enthalten, können Sie für jede Rolle einen regulären Ausdruck als Suchmuster und eine Ersetzungsregel festlegen, um den Wert in das gewünschte Format zu bringen. Weitere Informationen zur Funktionsweise des Ersetzens mit regulären Ausdrücken finden Sie in der Funktionsdokumentation zu „ QString::replace “ (const QRegularExpression &rx, const QString &after). Beachten Sie, dass die Verwendung regulärer Ausdrücke Auswirkungen auf die Leistung hat. Daher ist es effizienter, Elementmodelle zu verwenden, bei denen kein Suchen und Ersetzen erforderlich ist, um die gewünschten Werte zu erhalten.
Ein Beispiel für die Verwendung der Suchmuster in Verbindung mit den Rollen finden Sie unter „Einfaches Balkendiagramm“.
Siehe auch „Qt Graphs “ –Datenverarbeitung mit 3D.
Dokumentation zu Mitgliedstypen
enum class QItemModelBarDataProxy::MultiMatchBehavior
Verhaltensarten für die Eigenschaft „ QItemModelBarDataProxy::multiMatchBehavior “.
| Konstant | Wert | Beschreibung |
|---|---|---|
QItemModelBarDataProxy::MultiMatchBehavior::First | 0 | Der Wert wird aus dem ersten Element des Elementmodells entnommen, das der jeweiligen Zeilen-/Spaltenkombination entspricht. |
QItemModelBarDataProxy::MultiMatchBehavior::Last | 1 | Der Wert wird aus dem letzten Element des Elementmodells entnommen, das zu jeder Zeilen-/Spaltenkombination passt. |
QItemModelBarDataProxy::MultiMatchBehavior::Average | 2 | Die Werte aller Elemente, die zu jeder Zeilen-/Spaltenkombination passen, werden gemittelt, und der Mittelwert wird als Balkenwert verwendet. |
QItemModelBarDataProxy::MultiMatchBehavior::Cumulative | 3 | Die Werte aller Elemente, die zu jeder Zeilen-/Spaltenkombination passen, werden addiert, und die Summe wird als Balkenwert verwendet. |
Eigenschaftsdokumentation
autoColumnCategories : bool
Diese Eigenschaft legt fest, ob Spaltenkategorien automatisch generiert werden.
Bei der Einstellung „ true “ ignoriert die Zuordnung alle explizit festgelegten Spaltenkategorien und überschreibt diese durch automatisch generierte, sobald die Daten aus dem Modell aufgelöst werden. Die Standardeinstellung ist „ true “.
Zugriffsfunktionen:
| bool | autoColumnCategories() const |
| void | setAutoColumnCategories(bool enable) |
Benachrichtigungssignal:
| void | autoColumnCategoriesChanged(bool enable) |
autoRowCategories : bool
Diese Eigenschaft legt fest, ob Zeilenkategorien automatisch generiert werden.
Bei der Einstellung „ true “ ignoriert die Zuordnung alle explizit festgelegten Zeilenkategorien und überschreibt diese durch automatisch generierte, sobald die Daten aus dem Modell aufgelöst werden. Die Standardeinstellung lautet „ true “.
Zugriffsfunktionen:
| bool | autoRowCategories() const |
| void | setAutoRowCategories(bool enable) |
Benachrichtigungssignal:
| void | autoRowCategoriesChanged(bool enable) |
columnCategories : QStringList
Diese Eigenschaft enthält die Spaltenkategorien für die Zuordnung.
Zugriffsfunktionen:
| QStringList | columnCategories() const |
| void | setColumnCategories(const QStringList &categories) |
Benachrichtigungssignal:
| void | columnCategoriesChanged() |
columnRole : QString
Diese Eigenschaft legt die Spaltenrolle für die Zuordnung fest.
Zugriffsfunktionen:
| QString | columnRole() const |
| void | setColumnRole(const QString &role) |
Benachrichtigungssignal:
| void | columnRoleChanged(const QString &role) |
columnRolePattern : QRegularExpression
Diese Eigenschaft legt fest, ob der durch die Spaltenrolle zugeordnete Wert vor seiner Verwendung als Spaltenkategorie gesucht und ersetzt wird.
Diese Eigenschaft gibt den regulären Ausdruck an, mit dem der zu ersetzende Teil des zugeordneten Werts gesucht wird, und die Eigenschaft „ columnRoleReplace “ enthält die Ersatzzeichenfolge. Dies ist beispielsweise nützlich, um Zeilen- und Spaltenkategorien aus einem einzelnen Zeitstempelfeld im Elementmodell zu parsen.
Zugriffsfunktionen:
| QRegularExpression | columnRolePattern() const |
| void | setColumnRolePattern(const QRegularExpression &pattern) |
Benachrichtigungssignal:
| void | columnRolePatternChanged(const QRegularExpression &pattern) |
Siehe auch „ columnRole “ und „ columnRoleReplace “.
columnRoleReplace : QString
Diese Eigenschaft enthält den Ersatzinhalt, der in Verbindung mit „ columnRolePattern “ verwendet werden soll.
Standardmäßig ist dies eine leere Zeichenfolge. Weitere Informationen zur Funktionsweise der Suche und des Ersetzens mit regulären Ausdrücken finden Sie in der Funktionsdokumentation zu „ QString::replace “ (const QRegularExpression &rx, const QString &after).
Zugriffsfunktionen:
| QString | columnRoleReplace() const |
| void | setColumnRoleReplace(const QString &replace) |
Notifier-Signal:
| void | columnRoleReplaceChanged(const QString &replace) |
Siehe auch columnRole und columnRolePattern.
itemModel : QAbstractItemModel*
Diese Eigenschaft enthält das Elementmodell.
Zugriffsfunktionen:
| QAbstractItemModel * | itemModel() const |
| void | setItemModel(QAbstractItemModel *itemModel) |
Notifier-Signal:
| void | itemModelChanged(const QAbstractItemModel *itemModel) |
multiMatchBehavior : QItemModelBarDataProxy::MultiMatchBehavior
Wie mit mehreren Übereinstimmungen für jede Zeilen-/Spaltenkombination umgegangen wird.
Standardmäßig ist „ QItemModelBarDataProxy::MultiMatchBehavior::Last “ eingestellt. Das gewählte Verhalten wirkt sich sowohl auf den Balkenwert als auch auf die Drehung aus.
Beispiel: Sie haben möglicherweise ein Elementmodell mit zeitgestempelten Daten, die in unregelmäßigen Abständen erfasst wurden, und möchten den Gesamtwert der Datenelemente für jeden Tag mit einem Balkendiagramm visualisieren. Dies lässt sich erreichen, indem Sie Zeilen- und Spaltenkategorien so festlegen, dass jeder Balken einen Tag darstellt, und „multiMatchBehavior“ auf „ QItemModelBarDataProxy::MultiMatchBehavior::Cumulative “ setzen.
Zugriffsfunktionen:
| QItemModelBarDataProxy::MultiMatchBehavior | multiMatchBehavior() const |
| void | setMultiMatchBehavior(QItemModelBarDataProxy::MultiMatchBehavior behavior) |
Notifier-Signal:
| void | multiMatchBehaviorChanged(QItemModelBarDataProxy::MultiMatchBehavior behavior) |
rotationRole : QString
Diese Eigenschaft bestimmt die Rotation für die Zuordnung.
Zugriffsfunktionen:
| QString | rotationRole() const |
| void | setRotationRole(const QString &role) |
Benachrichtigungssignal:
| void | rotationRoleChanged(const QString &role) |
rotationRolePattern : QRegularExpression
Diese Eigenschaft legt fest, ob der durch die Rotationsrolle zugeordnete Wert vor seiner Verwendung als Balkenrotationswinkel gesucht und ersetzt wird.
Diese Eigenschaft gibt den regulären Ausdruck an, mit dem der zu ersetzende Teil des zugeordneten Werts ermittelt wird, und die Eigenschaft „ rotationRoleReplace “ enthält die Ersatzzeichenfolge.
Zugriffsfunktionen:
| QRegularExpression | rotationRolePattern() const |
| void | setRotationRolePattern(const QRegularExpression &pattern) |
Benachrichtigungssignal:
| void | rotationRolePatternChanged(const QRegularExpression &pattern) |
Siehe auch „ rotationRole “ und „ rotationRoleReplace “.
rotationRoleReplace : QString
Diese Eigenschaft enthält den Ersatzinhalt, der in Verbindung mit „ rotationRolePattern “ verwendet werden soll.
Standardmäßig ist dies eine leere Zeichenkette. Weitere Informationen zur Funktionsweise der Suche und des Ersetzens mit regulären Ausdrücken finden Sie in der Funktionsdokumentation zu „ QString::replace “ (const QRegularExpression &rx, const QString &after).
Zugriffsfunktionen:
| QString | rotationRoleReplace() const |
| void | setRotationRoleReplace(const QString &replace) |
Notifier-Signal:
| void | rotationRoleReplaceChanged(const QString &replace) |
Siehe auch rotationRole und rotationRolePattern.
rowCategories : QStringList
Diese Eigenschaft enthält die Zeilenkategorien für die Zuordnung.
Zugriffsfunktionen:
| QStringList | rowCategories() const |
| void | setRowCategories(const QStringList &categories) |
Benachrichtigungssignal:
| void | rowCategoriesChanged() |
rowRole : QString
Diese Eigenschaft übernimmt die Zeilenrolle für die Zuordnung.
Zugriffsfunktionen:
| QString | rowRole() const |
| void | setRowRole(const QString &role) |
Benachrichtigungssignal:
| void | rowRoleChanged(const QString &role) |
rowRolePattern : QRegularExpression
Diese Eigenschaft gibt an, ob der durch die Zeilenrolle zugeordnete Wert vor seiner Verwendung als Zeilenkategorie gesucht und ersetzt wird.
Diese Eigenschaft gibt den regulären Ausdruck an, mit dem der zu ersetzende Teil des zugeordneten Werts gefunden wird, und die Eigenschaft „ rowRoleReplace “ enthält die Ersatzzeichenfolge. Dies ist beispielsweise nützlich, um Zeilen- und Spaltenkategorien aus einem einzelnen Zeitstempelfeld im Elementmodell zu parsen.
Zugriffsfunktionen:
| QRegularExpression | rowRolePattern() const |
| void | setRowRolePattern(const QRegularExpression &pattern) |
Benachrichtigungssignal:
| void | rowRolePatternChanged(const QRegularExpression &pattern) |
Siehe auch „ rowRole “ und „ rowRoleReplace “.
rowRoleReplace : QString
Diese Eigenschaft enthält den Ersatzinhalt, der in Verbindung mit „ rowRolePattern “ verwendet werden soll.
Standardmäßig ist dies eine leere Zeichenfolge. Weitere Informationen zur Funktionsweise der Suche und des Ersetzens mit regulären Ausdrücken finden Sie in der Funktionsdokumentation zu „ QString::replace “ (const QRegularExpression &rx, const QString &after).
Zugriffsfunktionen:
| QString | rowRoleReplace() const |
| void | setRowRoleReplace(const QString &replace) |
Notifier-Signal:
| void | rowRoleReplaceChanged(const QString &replace) |
Siehe auch rowRole und rowRolePattern.
useModelCategories : bool
Diese Eigenschaft gilt unabhängig davon, ob Zeilen- und Spaltenrollen sowie Kategorien für die Zuordnung verwendet werden.
Bei der Einstellung „ true “ ignoriert das Mapping Zeilen- und Spaltenrollen sowie Kategorien und verwendet stattdessen die Zeilen und Spalten aus dem Modell. Die Standardeinstellung ist „ false “.
Zugriffsfunktionen:
| bool | useModelCategories() const |
| void | setUseModelCategories(bool enable) |
Benachrichtigungssignal:
| void | useModelCategoriesChanged(bool enable) |
valueRole : QString
Diese Eigenschaft enthält den Wert „role“ für die Zuordnung.
Zugriffsfunktionen:
| QString | valueRole() const |
| void | setValueRole(const QString &role) |
Benachrichtigungssignal:
| void | valueRoleChanged(const QString &role) |
valueRolePattern : QRegularExpression
Diese Eigenschaft gibt an, ob der durch die Rolle „value“ zugeordnete Wert vor seiner Verwendung als Balkenwert gesucht und ersetzt wird.
Diese Eigenschaft gibt den regulären Ausdruck an, mit dem der zu ersetzende Teil des zugeordneten Werts gesucht wird, und die Eigenschaft „ valueRoleReplace “ enthält die Ersatzzeichenfolge.
Zugriffsfunktionen:
| QRegularExpression | valueRolePattern() const |
| void | setValueRolePattern(const QRegularExpression &pattern) |
Benachrichtigungssignal:
| void | valueRolePatternChanged(const QRegularExpression &pattern) |
Siehe auch „ valueRole “ und „ valueRoleReplace “.
valueRoleReplace : QString
Diese Eigenschaft enthält den Ersatzinhalt, der in Verbindung mit „ valueRolePattern “ verwendet werden soll.
Standardmäßig ist der Wert eine leere Zeichenfolge. Weitere Informationen zur Funktionsweise der Suche und des Ersetzens mit regulären Ausdrücken finden Sie in der Funktionsdokumentation zu „ QString::replace “ (const QRegularExpression &rx, const QString &after).
Zugriffsfunktionen:
| QString | valueRoleReplace() const |
| void | setValueRoleReplace(const QString &replace) |
Notifier-Signal:
| void | valueRoleReplaceChanged(const QString &replace) |
Siehe auch valueRole und valueRolePattern.
Dokumentation zu den Mitgliedsfunktionen
[explicit] QItemModelBarDataProxy::QItemModelBarDataProxy(QObject *parent = nullptr)
Erstellt ein `QItemModelBarDataProxy` mit einem optionalen ` parent`.
[explicit] QItemModelBarDataProxy::QItemModelBarDataProxy(QAbstractItemModel *itemModel, QObject *parent = nullptr)
Erstellt ein `QItemModelBarDataProxy` mit ` itemModel ` und einem optionalen ` parent`. Der Proxy übernimmt nicht die Eigentumsrechte an ` itemModel`, da Item-Modelle in der Regel anderen Steuerelementen gehören.
[explicit] QItemModelBarDataProxy::QItemModelBarDataProxy(QAbstractItemModel *itemModel, const QString &valueRole, QObject *parent = nullptr)
Erstellt ein `QItemModelBarDataProxy` mit einem ` itemModel ` und einem optionalen ` parent`. Der Proxy übernimmt nicht die Eigentumsrechte am ` itemModel`, da Item-Modelle in der Regel anderen Steuerelementen gehören. Die Wertrolle wird auf ` valueRole` gesetzt. Dieser Konstruktor ist für Modelle vorgesehen, deren Daten bereits ordnungsgemäß in Zeilen und Spalten sortiert sind; daher wird auch die Eigenschaft ` useModelCategories ` auf `true` gesetzt.
[explicit] QItemModelBarDataProxy::QItemModelBarDataProxy(QAbstractItemModel *itemModel, const QString &rowRole, const QString &columnRole, const QString &valueRole, QObject *parent = nullptr)
Erstellt ein `QItemModelBarDataProxy` mit ` itemModel ` und einem optionalen ` parent`. Der Proxy übernimmt nicht die Eigentümerschaft an ` itemModel`, da Item-Modelle in der Regel anderen Steuerelementen gehören. Die Rollenzuordnungen werden mit ` rowRole`, ` columnRole` und ` valueRole` festgelegt.
[explicit] QItemModelBarDataProxy::QItemModelBarDataProxy(QAbstractItemModel *itemModel, const QString &rowRole, const QString &columnRole, const QString &valueRole, const QString &rotationRole, QObject *parent = nullptr)
Erstellt ein `QItemModelBarDataProxy` mit ` itemModel ` und einem optionalen ` parent`. Der Proxy übernimmt nicht die Eigentümerschaft an ` itemModel`, da Item-Modelle in der Regel anderen Steuerelementen gehören. Die Rollenzuordnungen werden mit ` rowRole`, ` columnRole`, ` valueRole` und ` rotationRole` festgelegt.
[explicit] QItemModelBarDataProxy::QItemModelBarDataProxy(QAbstractItemModel *itemModel, const QString &rowRole, const QString &columnRole, const QString &valueRole, const QStringList &rowCategories, const QStringList &columnCategories, QObject *parent = nullptr)
Erstellt ein `QItemModelBarDataProxy` mit ` itemModel ` und einem optionalen ` parent`. Der Proxy übernimmt nicht die Eigentümerschaft an ` itemModel`, da Item-Modelle in der Regel anderen Steuerelementen gehören. Die Rollenzuordnungen werden mit ` rowRole`, ` columnRole` und ` valueRole` festgelegt. Zeilen- und Spaltenkategorien werden mit ` rowCategories ` und ` columnCategories` festgelegt. Dieser Konstruktor setzt außerdem ` autoRowCategories ` und ` autoColumnCategories ` auf „false“.
[explicit] QItemModelBarDataProxy::QItemModelBarDataProxy(QAbstractItemModel *itemModel, const QString &rowRole, const QString &columnRole, const QString &valueRole, const QString &rotationRole, const QStringList &rowCategories, const QStringList &columnCategories, QObject *parent = nullptr)
Erstellt ein `QItemModelBarDataProxy` mit ` itemModel ` und einem optionalen ` parent`. Der Proxy übernimmt nicht die Eigentümerschaft an ` itemModel`, da Item-Modelle in der Regel anderen Steuerelementen gehören. Die Rollenzuordnungen werden mit ` rowRole`, ` columnRole`, ` valueRole` und ` rotationRole` festgelegt. Zeilen- und Spaltenkategorien werden mit ` rowCategories ` und ` columnCategories` festgelegt. Dieser Konstruktor setzt außerdem ` autoRowCategories ` und ` autoColumnCategories ` auf „false“.
[override virtual noexcept] QItemModelBarDataProxy::~QItemModelBarDataProxy()
Löscht „ QItemModelBarDataProxy “.
[invokable] qsizetype QItemModelBarDataProxy::columnCategoryIndex(const QString &category)
Gibt den Index der angegebenen „ category “ in der Liste der Spaltenkategorien zurück. Wird die Kategorie nicht gefunden, wird -1 zurückgegeben.
Hinweis: Wenn die automatische Generierung von Spaltenkategorien verwendet wird, gibt diese Methode keinen gültigen Index zurück, bevor die Daten im Modell zum ersten Mal aufgelöst wurden.
Hinweis: Diese Funktion kann über das Metaobjektsystem und aus QML aufgerufen werden. Siehe „ Q_INVOKABLE “.
void QItemModelBarDataProxy::remap(const QString &rowRole, const QString &columnRole, const QString &valueRole, const QString &rotationRole, const QStringList &rowCategories, const QStringList &columnCategories)
Änderungen an der Zuordnung unter rowRole, columnRole, valueRole, rotationRole, rowCategories und columnCategories.
[invokable] qsizetype QItemModelBarDataProxy::rowCategoryIndex(const QString &category)
Gibt den Index der angegebenen „ category “ in der Liste der Zeilenkategorien zurück. Ist die Liste der Zeilenkategorien leer, wird -1 zurückgegeben.
Hinweis: Wenn die automatische Generierung von Zeilenkategorien verwendet wird, gibt diese Methode keinen gültigen Index zurück, bevor die Daten im Modell zum ersten Mal aufgelöst wurden.
Hinweis: Diese Funktion kann über das Metaobjektsystem und aus QML aufgerufen werden. Siehe „ Q_INVOKABLE “.
void QItemModelBarDataProxy::setItemModel(QAbstractItemModel *itemModel)
Setzt das Elementmodell auf „ itemModel “. Übernimmt nicht die Eigentumsrechte am Modell, stellt jedoch eine Verbindung her, um auf Änderungen zu reagieren.
Hinweis: Setter -Funktion für die Eigenschaft „ itemModel “.
Siehe auch ` itemModel()`.
© 2026 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.