QTreeView Class
Die Klasse „QTreeView“ bietet eine Standard-Model-View-Implementierung einer Baumansicht. Mehr...
| Überschrift: | #include <QTreeView> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| Erbt von: | QAbstractItemView |
| Vererbt an: |
Eigenschaften
|
|
Öffentliche Funktionen
| QTreeView(QWidget *parent = nullptr) | |
| virtual | ~QTreeView() |
| bool | allColumnsShowFocus() const |
| int | autoExpandDelay() const |
| int | columnAt(int x) const |
| int | columnViewportPosition(int column) const |
| int | columnWidth(int column) const |
| bool | expandsOnDoubleClick() const |
| QHeaderView * | header() const |
| int | indentation() const |
| QModelIndex | indexAbove(const QModelIndex &index) const |
| QModelIndex | indexBelow(const QModelIndex &index) const |
| bool | isAnimated() const |
| bool | isColumnHidden(int column) const |
| bool | isExpanded(const QModelIndex &index) const |
| bool | isFirstColumnSpanned(int row, const QModelIndex &parent) const |
| bool | isHeaderHidden() const |
| bool | isRowHidden(int row, const QModelIndex &parent) const |
| bool | isSortingEnabled() const |
(since 6.12) QRect | itemDecorationRect(const QModelIndex &index) const |
| bool | itemsExpandable() const |
| void | resetIndentation() |
| bool | rootIsDecorated() const |
| void | setAllColumnsShowFocus(bool enable) |
| void | setAnimated(bool enable) |
| void | setAutoExpandDelay(int delay) |
| void | setColumnHidden(int column, bool hide) |
| void | setColumnWidth(int column, int width) |
| void | setExpanded(const QModelIndex &index, bool expanded) |
| void | setExpandsOnDoubleClick(bool enable) |
| void | setFirstColumnSpanned(int row, const QModelIndex &parent, bool span) |
| void | setHeader(QHeaderView *header) |
| void | setHeaderHidden(bool hide) |
| void | setIndentation(int i) |
| void | setItemsExpandable(bool enable) |
| void | setRootIsDecorated(bool show) |
| void | setRowHidden(int row, const QModelIndex &parent, bool hide) |
| void | setSortingEnabled(bool enable) |
| void | setTreePosition(int index) |
| void | setUniformRowHeights(bool uniform) |
| void | setWordWrap(bool on) |
| int | treePosition() const |
| bool | uniformRowHeights() const |
| bool | wordWrap() const |
Neu implementierte öffentliche Funktionen
| virtual void | dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QList<int> &roles = QList<int>()) override |
| virtual QModelIndex | indexAt(const QPoint &point) const override |
| virtual void | keyboardSearch(const QString &search) override |
| virtual void | reset() override |
| virtual void | scrollTo(const QModelIndex &index, QAbstractItemView::ScrollHint hint = EnsureVisible) override |
| virtual void | selectAll() override |
| virtual void | setModel(QAbstractItemModel *model) override |
| virtual void | setRootIndex(const QModelIndex &index) override |
| virtual void | setSelectionModel(QItemSelectionModel *selectionModel) override |
| virtual QRect | visualRect(const QModelIndex &index) const override |
Öffentliche Slots
| void | collapse(const QModelIndex &index) |
| void | collapseAll() |
| void | expand(const QModelIndex &index) |
| void | expandAll() |
| void | expandRecursively(const QModelIndex &index, int depth = -1) |
| void | expandToDepth(int depth) |
| void | hideColumn(int column) |
| void | resizeColumnToContents(int column) |
| void | showColumn(int column) |
| void | sortByColumn(int column, Qt::SortOrder order) |
Signale
Geschützte Funktionen
| virtual void | drawBranches(QPainter *painter, const QRect &rect, const QModelIndex &index) const |
| virtual void | drawRow(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const |
| void | drawTree(QPainter *painter, const QRegion ®ion) const |
| int | indexRowSizeHint(const QModelIndex &index) const |
| int | rowHeight(const QModelIndex &index) const |
Neu implementierte geschützte Funktionen
| virtual void | changeEvent(QEvent *event) override |
| virtual void | currentChanged(const QModelIndex ¤t, const QModelIndex &previous) override |
| virtual void | dragMoveEvent(QDragMoveEvent *event) override |
| virtual int | horizontalOffset() const override |
| virtual bool | isIndexHidden(const QModelIndex &index) const override |
| virtual void | keyPressEvent(QKeyEvent *event) override |
| virtual void | mouseDoubleClickEvent(QMouseEvent *event) override |
| virtual void | mouseMoveEvent(QMouseEvent *event) override |
| virtual void | mousePressEvent(QMouseEvent *event) override |
| virtual void | mouseReleaseEvent(QMouseEvent *event) override |
| virtual QModelIndex | moveCursor(QAbstractItemView::CursorAction cursorAction, Qt::KeyboardModifiers modifiers) override |
| virtual void | paintEvent(QPaintEvent *event) override |
| virtual void | rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end) override |
| virtual void | rowsInserted(const QModelIndex &parent, int start, int end) override |
| virtual void | scrollContentsBy(int dx, int dy) override |
| virtual QModelIndexList | selectedIndexes() const override |
| virtual void | selectionChanged(const QItemSelection &selected, const QItemSelection &deselected) override |
| virtual void | setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags command) override |
| virtual int | sizeHintForColumn(int column) const override |
| virtual void | timerEvent(QTimerEvent *event) override |
| virtual void | updateGeometries() override |
| virtual int | verticalOffset() const override |
| virtual bool | viewportEvent(QEvent *event) override |
| virtual QSize | viewportSizeHint() const override |
| virtual QRegion | visualRegionForSelection(const QItemSelection &selection) const override |
Geschützte Slots
| void | columnCountChanged(int oldCount, int newCount) |
| void | columnMoved() |
| void | columnResized(int column, int oldSize, int newSize) |
| void | rowsRemoved(const QModelIndex &parent, int start, int end) |
Ausführliche Beschreibung

Eine `QTreeView` implementiert eine Baumdarstellung von Elementen aus einem Modell. Diese Klasse wird verwendet, um standardmäßige hierarchische Listen bereitzustellen, die zuvor von der Klasse ` QListView ` bereitgestellt wurden, jedoch unter Verwendung des flexibleren Ansatzes, den die Modell-View-Architektur von Qt bietet.
Die Klasse `QTreeView` gehört zu den Modell-Ansicht-Klassen und ist Teil des Modell-Ansicht-Frameworks von Qt.
QTreeView implementiert die von der Klasse „ QAbstractItemView “ definierten Schnittstellen, um Daten anzeigen zu können, die von Modellen bereitgestellt werden, die von der Klasse „ QAbstractItemModel “ abgeleitet sind.
Es ist einfach, eine Baumansicht zu erstellen, die Daten aus einem Modell anzeigt. Im folgenden Beispiel werden die Inhalte eines Verzeichnisses von einem „ QFileSystemModel “ bereitgestellt und als Baum dargestellt:
QFileSystemModel *model = new QFileSystemModel;
model->setRootPath(QDir::currentPath());
QTreeView *tree = new QTreeView(splitter);
tree->setModel(model);Die Modell-Darstellungs-Architektur stellt sicher, dass der Inhalt der Baumansicht aktualisiert wird, sobald sich das Modell ändert.
Elemente, die untergeordnete Elemente haben, können sich in einem erweiterten (untergeordnete Elemente sind sichtbar) oder zusammengeklappten (untergeordnete Elemente sind ausgeblendet) Zustand befinden. Wenn sich dieser Zustand ändert, wird ein Signal „ collapsed()“ oder „ expanded()“ mit dem Modellindex des betreffenden Elements ausgelöst.
Der Grad der Einrückung, mit dem Hierarchieebenen angezeigt werden, wird durch die Eigenschaft „ indentation “ gesteuert.
Kopfzeilen in Baumansichten werden mithilfe der Klasse „ QHeaderView “ erstellt und können mit „ header()->hide() “ ausgeblendet werden. Beachten Sie, dass jede Kopfzeile so konfiguriert ist, dass ihre Eigenschaft „ stretchLastSection “ auf „true“ gesetzt ist, wodurch sichergestellt wird, dass die Ansicht keinen der ihr für die Kopfzeile zugewiesenen Platz verschwendet. Ist dieser Wert auf „true“ gesetzt, überschreibt diese Eigenschaft den im letzten Abschnitt der Kopfzeile festgelegten Größenanpassungsmodus.
Standardmäßig sind alle Spalten in einer Baumansicht verschiebbar, mit Ausnahme der ersten. Um das Verschieben dieser Spalten zu deaktivieren, verwenden Sie die Funktion ` setSectionsMovable()` von ` QHeaderView`. Weitere Informationen zum Neuanordnen von Abschnitten finden Sie unter ` Moving Header Sections`.
Tastenkombinationen
QTreeView unterstützt eine Reihe von Tastenkombinationen, mit denen der Benutzer in der Ansicht navigieren und mit den Inhalten der Elemente interagieren kann:
| Taste | Aktion |
|---|---|
| Nach oben | Bewegt den Cursor zum Element in derselben Spalte in der vorherigen Zeile. Wenn das übergeordnete Element des aktuellen Elements keine weiteren Zeilen mehr enthält, zu denen navigiert werden kann, springt der Cursor zum entsprechenden Element in der letzten Zeile des Geschwisterelements, das dem übergeordneten Element vorausgeht. |
| Nach unten | Bewegt den Cursor zum Element in derselben Spalte in der nächsten Zeile. Wenn das übergeordnete Element des aktuellen Elements keine weiteren Zeilen mehr enthält, zu denen navigiert werden kann, springt der Cursor zum entsprechenden Element in der ersten Zeile des gleichrangigen Elements, das auf das übergeordnete Element folgt. |
| Links | Blendet die untergeordneten Elemente des aktuellen Elements (sofern vorhanden) aus, indem ein Zweig eingeklappt wird. |
| Minus | Wie „Links“. |
| Rechts | Blendet die untergeordneten Elemente des aktuellen Elements (sofern vorhanden) ein, indem ein Zweig erweitert wird. |
| Plus | Wie „Rechts“. |
| Sternchen | Erweitert das aktuelle Element und alle seine untergeordneten Elemente (sofern vorhanden). |
| Bild auf | Bewegt den Cursor eine Seite nach oben. |
| Bild-nach-unten | Bewegt den Cursor eine Seite nach unten. |
| Start | Bewegt den Cursor zu einem Element in derselben Spalte der ersten Zeile des ersten Elements der obersten Ebene im Modell. |
| Ende | Bewegt den Cursor zu einem Element in derselben Spalte der letzten Zeile des letzten Elements der obersten Ebene im Modell. |
| F2 | In bearbeitbaren Modellen wird damit das aktuelle Element zur Bearbeitung geöffnet. Mit der Escape-Taste können Sie den Bearbeitungsvorgang abbrechen und alle Änderungen an den angezeigten Daten rückgängig machen. |
Leistungsoptimierung
Es ist möglich, der Ansicht Hinweise zu den von ihr verarbeiteten Daten zu geben, um ihre Leistung bei der Anzeige einer großen Anzahl von Elementen zu verbessern. Ein Ansatz für Ansichten, die Elemente mit gleicher Höhe anzeigen sollen, besteht darin, die Eigenschaft „ uniformRowHeights “ auf „true“ zu setzen.
Siehe auch „ QListView“ , „ QTreeWidget “, „View Classes“, „ QAbstractItemModel “ und „ QAbstractItemView “.
Eigenschaftsdokumentation
allColumnsShowFocus : bool
Diese Eigenschaft legt fest, ob Elemente den Tastaturfokus über alle Spalten hinweg anzeigen sollen
Ist diese Eigenschaft auf „ true “ gesetzt, zeigen alle Spalten den Fokus an, andernfalls nur eine Spalte.
Der Standardwert ist „false“.
Zugriffsfunktionen:
| bool | allColumnsShowFocus() const |
| void | setAllColumnsShowFocus(bool enable) |
animated : bool
Diese Eigenschaft legt fest, ob Animationen aktiviert sind
Wenn diese Eigenschaft auf „ true “ gesetzt ist, animiert die Baumansicht das Ein- und Ausklappen von Zweigen. Wenn diese Eigenschaft auf „ false “ gesetzt ist, klappt die Baumansicht Zweige sofort ein oder aus, ohne die Animation anzuzeigen.
Standardmäßig ist diese Eigenschaft auf „ false “ gesetzt.
Zugriffsfunktionen:
| bool | isAnimated() const |
| void | setAnimated(bool enable) |
autoExpandDelay : int
Diese Eigenschaft legt die Verzögerungszeit fest, die verstreicht, bevor Elemente in einer Baumstruktur während eines Drag-and-Drop-Vorgangs geöffnet werden.
Diese Eigenschaft gibt die Zeit in Millisekunden an, die der Benutzer über einem Knoten verweilen muss, bevor dieser Knoten automatisch geöffnet wird. Ist der Wert kleiner als 0, wird die Funktion nicht aktiviert.
Standardmäßig hat diese Eigenschaft den Wert -1, was bedeutet, dass die automatische Erweiterung deaktiviert ist.
Zugriffsfunktionen:
| int | autoExpandDelay() const |
| void | setAutoExpandDelay(int delay) |
expandsOnDoubleClick : bool
Diese Eigenschaft gibt an, ob die Elemente durch Doppelklicken erweitert werden können.
Diese Eigenschaft gibt an, ob der Benutzer Elemente durch Doppelklicken ein- und ausklappen kann. Der Standardwert ist „true“.
Zugriffsfunktionen:
| bool | expandsOnDoubleClick() const |
| void | setExpandsOnDoubleClick(bool enable) |
Siehe auch „ itemsExpandable “.
headerHidden : bool
Diese Eigenschaft legt fest, ob die Kopfzeile angezeigt wird oder nicht.
Ist diese Eigenschaft auf „ true “ gesetzt, wird die Kopfzeile nicht angezeigt, andernfalls wird sie angezeigt. Der Standardwert ist „false“.
Zugriffsfunktionen:
| bool | isHeaderHidden() const |
| void | setHeaderHidden(bool hide) |
Siehe auch ` header()`.
indentation : int
Einrückung der Elemente in der Baumansicht.
Diese Eigenschaft enthält die in Pixeln gemessene Einrückung der Elemente für jede Ebene in der Baumansicht. Bei Elementen der obersten Ebene gibt die Einrückung den horizontalen Abstand vom Rand des Ansichtsbereichs zu den Elementen in der ersten Spalte an; bei untergeordneten Elementen gibt sie deren Einrückung gegenüber ihren übergeordneten Elementen an.
Standardmäßig ist der Wert dieser Eigenschaft stilabhängig. Wenn sich also der Stil ändert, wird diese Eigenschaft entsprechend aktualisiert. Der Aufruf von `setIndentation()` stoppt die Aktualisierungen, der Aufruf von `resetIndentation()` stellt das Standardverhalten wieder her.
Zugriffsfunktionen:
| int | indentation() const |
| void | setIndentation(int i) |
| void | resetIndentation() |
itemsExpandable : bool
Diese Eigenschaft gibt an, ob die Elemente vom Benutzer erweitert werden können.
Diese Eigenschaft gibt an, ob der Benutzer Elemente interaktiv ein- und ausklappen kann.
Standardmäßig ist diese Eigenschaft auf „ true “ gesetzt.
Zugriffsfunktionen:
| bool | itemsExpandable() const |
| void | setItemsExpandable(bool enable) |
rootIsDecorated : bool
Diese Eigenschaft legt fest, ob Steuerelemente zum Ein- und Ausblenden von Elementen der obersten Ebene angezeigt werden sollen
Elemente mit untergeordneten Elementen werden in der Regel mit Steuerelementen zum Ein- und Ausklappen angezeigt, sodass ihre untergeordneten Elemente ein- oder ausgeblendet werden können. Ist diese Eigenschaft auf „false“ gesetzt, werden diese Steuerelemente für Elemente der obersten Ebene nicht angezeigt. Dies kann verwendet werden, um eine einstufige Baumstruktur wie eine einfache Liste von Elementen erscheinen zu lassen.
Standardmäßig ist diese Eigenschaft auf „ true “ gesetzt.
Zugriffsfunktionen:
| bool | rootIsDecorated() const |
| void | setRootIsDecorated(bool show) |
sortingEnabled : bool
Diese Eigenschaft gibt an, ob die Sortierung aktiviert ist
Ist diese Eigenschaft auf „ true “ gesetzt, ist die Sortierung für den Baum aktiviert; ist die Eigenschaft auf „false“ gesetzt, ist die Sortierung nicht aktiviert. Der Standardwert ist „false“.
Hinweis: Um Leistungsprobleme zu vermeiden, wird empfohlen, die Sortierung erst nach dem Einfügen der Elemente in den Baum zu aktivieren. Alternativ können Sie die Elemente auch zunächst in eine Liste einfügen, bevor Sie sie in den Baum einfügen.
Zugriffsfunktionen:
| bool | isSortingEnabled() const |
| void | setSortingEnabled(bool enable) |
Siehe auch ` sortByColumn()`.
uniformRowHeights : bool
Diese Eigenschaft gibt an, ob alle Elemente in der Baumansicht dieselbe Höhe haben
Diese Eigenschaft sollte nur dann auf „true“ gesetzt werden, wenn garantiert ist, dass alle Elemente in der Ansicht dieselbe Höhe haben. Dadurch kann die Ansicht bestimmte Optimierungen vornehmen.
Die Höhe wird aus dem ersten Element in der Ansicht ermittelt. Sie wird aktualisiert, wenn sich die Daten dieses Elements ändern.
Hinweis: Ist der Größenhinweis des Editors größer als der der Zelle, wird der Größenhinweis des Editors verwendet.
Standardmäßig ist diese Eigenschaft auf „ false “ gesetzt.
Zugriffsfunktionen:
| bool | uniformRowHeights() const |
| void | setUniformRowHeights(bool uniform) |
wordWrap : bool
Diese Eigenschaft legt die Zeilenumbruchregel für den Elementtext fest
Wenn diese Eigenschaft auf „ true “ gesetzt ist, wird der Elementtext bei Bedarf an Worttrennstellen umgebrochen; andernfalls erfolgt kein Umbruch. Diese Eigenschaft ist standardmäßig auf „ false “ gesetzt.
Beachten Sie, dass die Zelle auch bei aktiviertem Zeilenumbruch nicht so erweitert wird, dass der gesamte Text hineinpasst. Ellipsen werden entsprechend der aktuellen Einstellung „ textElideMode “ eingefügt.
Zugriffsfunktionen:
| bool | wordWrap() const |
| void | setWordWrap(bool on) |
Dokumentation zu den Member-Funktionen
[explicit] QTreeView::QTreeView(QWidget *parent = nullptr)
Erstellt eine Baumansicht mit einem „ parent “, um die Daten eines Modells darzustellen. Verwenden Sie „ setModel()“, um das Modell festzulegen.
Siehe auch ` QAbstractItemModel`.
[virtual noexcept] QTreeView::~QTreeView()
Löscht die Baumansicht.
[override virtual protected] void QTreeView::changeEvent(QEvent *event)
Umsetzt: ` QFrame::changeEvent(QEvent *ev)`.
[slot] void QTreeView::collapse(const QModelIndex &index)
Faltet das durch „ index “ angegebene Modellelement zusammen.
Siehe auch ` collapsed()`.
[slot] void QTreeView::collapseAll()
Faltet alle aufgeklappten Elemente zusammen.
Siehe auch expandAll(), expand(), collapse() und setExpanded().
[signal] void QTreeView::collapsed(const QModelIndex &index)
Dieses Signal wird ausgelöst, wenn das durch „ index “ angegebene Element ausgeblendet wird.
int QTreeView::columnAt(int x) const
Gibt die Spalte in der Baumansicht zurück, deren Kopfzeile die angegebene Koordinate x abdeckt.
[protected slot] void QTreeView::columnCountChanged(int oldCount, int newCount)
Teilt der Baumansicht mit, dass sich die Anzahl der Spalten in der Baumansicht von oldCount auf newCount geändert hat.
[protected slot] void QTreeView::columnMoved()
Dieser Slot wird immer dann aufgerufen, wenn eine Spalte verschoben wurde.
[protected slot] void QTreeView::columnResized(int column, int oldSize, int newSize)
Diese Funktion wird immer dann aufgerufen, wenn die Größe von column im Header geändert wird. oldSize und newSize geben die vorherige Größe und die neue Größe in Pixeln an.
Siehe auch setColumnWidth().
int QTreeView::columnViewportPosition(int column) const
Gibt die horizontale Position des „ column “ im Ansichtsbereich zurück.
int QTreeView::columnWidth(int column) const
Gibt die Breite des „ column “ zurück.
Siehe auch „ resizeColumnToContents()“ und „ setColumnWidth()“.
[override virtual protected] void QTreeView::currentChanged(const QModelIndex ¤t, const QModelIndex &previous)
Implementiert: ` QAbstractItemView::currentChanged` (const QModelIndex ¤t, const QModelIndex &previous).
[override virtual] void QTreeView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QList<int> &roles = QList<int>())
Implementiert: QAbstractItemView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QList<int> &roles).
[override virtual protected] void QTreeView::dragMoveEvent(QDragMoveEvent *event)
Umsetzt: ` QAbstractItemView::dragMoveEvent` (`QDragMoveEvent *event`).
[virtual protected] void QTreeView::drawBranches(QPainter *painter, const QRect &rect, const QModelIndex &index) const
Zeichnet die Zweige in der Baumansicht in derselben Zeile wie das Modellelement „ index “ unter Verwendung der angegebenen „ painter “. Die Zweige werden in dem durch „ rect “ festgelegten Rechteck gezeichnet.
[virtual protected] void QTreeView::drawRow(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
Zeichnet die Zeile in der Baumansicht, die das Modellelement „ index “ enthält, unter Verwendung des angegebenen „ painter “. Der „ option “ steuert, wie das Element angezeigt wird.
Siehe auch setAlternatingRowColors().
[protected] void QTreeView::drawTree(QPainter *painter, const QRegion ®ion) const
Zeichnet den Teil des Baums, der den angegebenen „ region “ schneidet, unter Verwendung des angegebenen „ painter “.
Siehe auch paintEvent().
[slot] void QTreeView::expand(const QModelIndex &index)
Erweitert das durch die „ index “ angegebene Modellelement.
Siehe auch expanded().
[slot] void QTreeView::expandAll()
Erweitert alle erweiterbaren Elemente.
Hinweis: Diese Funktion versucht nicht, Daten zu „ fetch more ieren“.
Warnung: Wenn das Modell eine große Anzahl von Elementen enthält, dauert die Ausführung dieser Funktion einige Zeit.
Siehe auch „ collapseAll()“, „ expand()“, „ collapse()“ und „ setExpanded()“.
[slot] void QTreeView::expandRecursively(const QModelIndex &index, int depth = -1)
Erweitert das Element an der angegebenen Position „ index “ sowie alle seine untergeordneten Elemente auf die angegebene Position „ depth “. Die Position „ depth “ ist relativ zur angegebenen Position „ index “. Ein Wert von -1 für „ depth “ erweitert alle untergeordneten Elemente, ein Wert von 0 für „ depth “ erweitert nur das angegebene Element „ index “.
Hinweis: Diese Funktion versucht nicht, Daten zu „ fetch more “.
Warnung: Wenn das Modell eine große Anzahl von Elementen enthält, dauert die Ausführung dieser Funktion einige Zeit.
Siehe auch „ expandAll()“.
[slot] void QTreeView::expandToDepth(int depth)
Erweitert alle erweiterbaren Elemente auf die angegebene Breite depth.
Hinweis: Diese Funktion versucht nicht, Daten zu „ fetch more “.
Siehe auch „ expandAll()“, „ collapseAll()“, „ expand()“, „ collapse()“ und „ setExpanded()“.
[signal] void QTreeView::expanded(const QModelIndex &index)
Dieses Signal wird ausgelöst, wenn das durch „ index “ angegebene Element erweitert wird.
Siehe auch setExpanded().
QHeaderView *QTreeView::header() const
Gibt den Header für die Baumansicht zurück.
Siehe auch setHeader() und QAbstractItemModel::headerData().
[slot] void QTreeView::hideColumn(int column)
Blendet die angegebene „ column “ aus.
Hinweis: Diese Funktion sollte erst aufgerufen werden, nachdem das Modell initialisiert wurde, da die Ansicht die Anzahl der Spalten kennen muss, um „ column “ auszublenden.
Siehe auch ` showColumn()` und ` setColumnHidden()`.
[override virtual protected] int QTreeView::horizontalOffset() const
Implementiert: QAbstractItemView::horizontalOffset() const.
Gibt den horizontalen Versatz der Elemente in der Baumansicht zurück.
Beachten Sie, dass die Baumansicht die Positionen der horizontalen Kopfzeilenabschnitte verwendet, um die Positionen der Spalten in der Ansicht zu bestimmen.
Siehe auch verticalOffset().
QModelIndex QTreeView::indexAbove(const QModelIndex &index) const
Gibt den Modellindex des Elements oberhalb von „ index “ zurück.
[override virtual] QModelIndex QTreeView::indexAt(const QPoint &point) const
Implementiert neu: QAbstractItemView::indexAt(const QPoint &point) const.
QModelIndex QTreeView::indexBelow(const QModelIndex &index) const
Gibt den Modellindex des Elements unter index zurück.
[protected] int QTreeView::indexRowSizeHint(const QModelIndex &index) const
Gibt den Größenhinweis für die durch ` index` angegebene Zeile zurück.
Siehe auch sizeHintForColumn() und uniformRowHeights().
bool QTreeView::isColumnHidden(int column) const
Gibt „ true “ zurück, wenn die „ column “ ausgeblendet ist; andernfalls wird „ false “ zurückgegeben.
Siehe auch „ hideColumn()“ und „ isRowHidden()“.
bool QTreeView::isExpanded(const QModelIndex &index) const
Gibt „ true “ zurück, wenn das Modellelement „ index “ erweitert ist; andernfalls wird „false“ zurückgegeben.
Siehe auch expand(), expanded() und setExpanded().
bool QTreeView::isFirstColumnSpanned(int row, const QModelIndex &parent) const
Gibt „ true “ zurück, wenn das Element in der ersten Spalte der angegebenen „ row “ der „ parent “ sich über alle Spalten erstreckt; andernfalls wird „ false “ zurückgegeben.
Siehe auch setFirstColumnSpanned().
[override virtual protected] bool QTreeView::isIndexHidden(const QModelIndex &index) const
Implementiert neu: ` QAbstractItemView::isIndexHidden(const QModelIndex &index) const`.
bool QTreeView::isRowHidden(int row, const QModelIndex &parent) const
Gibt „ true “ zurück, wenn das Element im angegebenen „ row “ des „ parent “ ausgeblendet ist; andernfalls wird „ false “ zurückgegeben.
Siehe auch setRowHidden() und isColumnHidden().
[since 6.12] QRect QTreeView::itemDecorationRect(const QModelIndex &index) const
Gibt das Rechteck zurück, das von der Ein- und Ausklappanzeige des Elements unter index eingenommen wird. Verfügt das Element nicht über eine solche Anzeige – beispielsweise, weil es keine untergeordneten Elemente hat oder weil die Root-Dekoration deaktiviert ist –, ist das zurückgegebene Rechteck ungültig. Ein ungültiges index liefert ebenfalls ein ungültiges Rechteck zurück.
Diese Funktion wurde in Qt 6.12 eingeführt.
Siehe auch visualRect() und QStyle::SE_TreeViewDisclosureItem.
[override virtual protected] void QTreeView::keyPressEvent(QKeyEvent *event)
Implementiert: ` QAbstractItemView::keyPressEvent(QKeyEvent *event)`.
[override virtual] void QTreeView::keyboardSearch(const QString &search)
Implementiert neu: ` QAbstractItemView::keyboardSearch(const QString &search)`.
[override virtual protected] void QTreeView::mouseDoubleClickEvent(QMouseEvent *event)
Implementiert: ` QAbstractItemView::mouseDoubleClickEvent` (`QMouseEvent *event`).
[override virtual protected] void QTreeView::mouseMoveEvent(QMouseEvent *event)
Implementiert: ` QAbstractItemView::mouseMoveEvent(QMouseEvent *event)`.
[override virtual protected] void QTreeView::mousePressEvent(QMouseEvent *event)
Implementiert: ` QAbstractItemView::mousePressEvent` (`QMouseEvent *event`).
[override virtual protected] void QTreeView::mouseReleaseEvent(QMouseEvent *event)
Implementiert: ` QAbstractItemView::mouseReleaseEvent` (`QMouseEvent *event`).
[override virtual protected] QModelIndex QTreeView::moveCursor(QAbstractItemView::CursorAction cursorAction, Qt::KeyboardModifiers modifiers)
Umsetzt: QAbstractItemView::moveCursor(QAbstractItemView::CursorAction cursorAction, Qt::KeyboardModifiers modifiers).
Bewegt den Cursor gemäß der in ` cursorAction` beschriebenen Vorgehensweise unter Verwendung der vom Button bereitgestellten Informationen ` modifiers`.
[override virtual protected] void QTreeView::paintEvent(QPaintEvent *event)
Umsetzt: QAbstractScrollArea::paintEvent(QPaintEvent *event).
[override virtual] void QTreeView::reset()
Implementiert: QAbstractItemView::reset().
[slot] void QTreeView::resizeColumnToContents(int column)
Passen die Größe des angegebenen „ column “ an die Größe seines Inhalts an.
Siehe auch columnWidth(), setColumnWidth(), sizeHintForColumn() und QHeaderView::resizeContentsPrecision().
[protected] int QTreeView::rowHeight(const QModelIndex &index) const
Gibt die Höhe der Zeile zurück, auf die der angegebene ` index` verweist.
Siehe auch ` indexRowSizeHint()`.
[override virtual protected] void QTreeView::rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end)
Implementiert: QAbstractItemView::rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end).
Teilt der Ansicht mit, dass die Zeilen von der Zeile „ start “ bis einschließlich der Zeile „ end “ aus dem angegebenen Modellelement „ parent “ entfernt werden sollen.
[override virtual protected] void QTreeView::rowsInserted(const QModelIndex &parent, int start, int end)
Implementiert: ` QAbstractItemView::rowsInserted` (const QModelIndex &parent, int start, int end).
Teilt der Ansicht mit, dass die Zeilen von der Zeile „ start “ bis einschließlich der Zeile „ end “ in das Modellelement „ parent “ eingefügt wurden.
[protected slot] void QTreeView::rowsRemoved(const QModelIndex &parent, int start, int end)
Gibt an, dass die Zeilen von der Zeile „ start “ bis einschließlich der Zeile „ end “ aus dem angegebenen Modellelement „ parent “ entfernt wurden.
[override virtual protected] void QTreeView::scrollContentsBy(int dx, int dy)
Implementiert: ` QAbstractScrollArea::scrollContentsBy(int dx, int dy)`.
Blättert den Inhalt der Baumansicht um (dx, dy).
[override virtual] void QTreeView::scrollTo(const QModelIndex &index, QAbstractItemView::ScrollHint hint = EnsureVisible)
Umsetzt: QAbstractItemView::scrollTo(const QModelIndex &index, QAbstractItemView::ScrollHint hint).
Blättert den Inhalt der Baumansicht so lange durch, bis das angegebene Modellelement index sichtbar ist. Der Parameter „ hint “ gibt genauer an, wo sich das Element nach der Operation befinden soll. Sind einige der übergeordneten Elemente des Modellelements ausgeblendet, werden sie erweitert, um sicherzustellen, dass das Modellelement sichtbar ist.
[override virtual] void QTreeView::selectAll()
Implementiert: QAbstractItemView::selectAll().
[override virtual protected] QModelIndexList QTreeView::selectedIndexes() const
Implementiert neu: ` QAbstractItemView::selectedIndexes()` const.
[override virtual protected] void QTreeView::selectionChanged(const QItemSelection &selected, const QItemSelection &deselected)
Implementiert: ` QAbstractItemView::selectionChanged` (const QItemSelection &selected, const QItemSelection &deselected).
void QTreeView::setColumnHidden(int column, bool hide)
Wenn „ hide “ wahr ist, wird „ column “ ausgeblendet, andernfalls wird „ column “ angezeigt.
Siehe auch isColumnHidden(), hideColumn() und setRowHidden().
void QTreeView::setColumnWidth(int column, int width)
Legt die Breite des angegebenen „ column “ auf den angegebenen Wert „ width “ fest.
Siehe auch „ columnWidth()“ und „ resizeColumnToContents()“.
void QTreeView::setExpanded(const QModelIndex &index, bool expanded)
Setzt das Element, auf das „ index “ verweist, je nach dem Wert von „ expanded “ entweder auf „zusammengeklappt“ oder „aufgeklappt“.
Siehe auch expanded(), expand() und isExpanded().
void QTreeView::setFirstColumnSpanned(int row, const QModelIndex &parent, bool span)
Wenn „ span “ wahr ist, wird das Element in der ersten Spalte des „ row “ mit der angegebenen „ parent “ so eingestellt, dass es sich über alle Spalten erstreckt; andernfalls werden alle Elemente auf der „ row “ angezeigt.
Siehe auch isFirstColumnSpanned().
void QTreeView::setHeader(QHeaderView *header)
Setzt die Kopfzeile der Baumansicht auf die angegebene Adresse header.
Die Ansicht übernimmt die Eigentumsrechte an dem angegebenen „ header “ und löscht diesen, sobald eine neue Kopfzeile festgelegt wird.
Siehe auch ` QAbstractItemModel::headerData()`.
[override virtual] void QTreeView::setModel(QAbstractItemModel *model)
Implementiert: ` QAbstractItemView::setModel(QAbstractItemModel *model)`.
[override virtual] void QTreeView::setRootIndex(const QModelIndex &index)
Implementiert: ` QAbstractItemView::setRootIndex(const QModelIndex &index)`.
void QTreeView::setRowHidden(int row, const QModelIndex &parent, bool hide)
Wenn „ hide “ wahr ist, wird die Seite „ row “ mit der angegebenen Adresse „ parent “ ausgeblendet, andernfalls wird die Seite „ row “ angezeigt.
Siehe auch isRowHidden() und setColumnHidden().
[override virtual protected] void QTreeView::setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags command)
Implementiert: QAbstractItemView::setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags flags).
Wendet die Auswahlfunktion ` command ` auf die Elemente an, die sich innerhalb des Rechtecks befinden oder von diesem berührt werden: ` rect`.
Siehe auch selectionCommand().
[override virtual] void QTreeView::setSelectionModel(QItemSelectionModel *selectionModel)
Implementiert: ` QAbstractItemView::setSelectionModel` (`QItemSelectionModel *selectionModel`).
void QTreeView::setTreePosition(int index)
Dies legt fest, dass die Baumstruktur am logischen Index index platziert werden soll. Wenn auf -1 gesetzt ist, folgt der Baum immer dem visuellen Index 0.
Siehe auch treePosition(), QHeaderView::swapSections() und QHeaderView::moveSection().
[slot] void QTreeView::showColumn(int column)
Zeigt die angegebene „ column “ in der Baumansicht an.
Siehe auch „ hideColumn()“ und „ setColumnHidden()“.
[override virtual protected] int QTreeView::sizeHintForColumn(int column) const
Implementiert: ` QAbstractItemView::sizeHintForColumn(int column) const`.
Gibt den Größenhinweis für die Breite des „ column “ zurück oder -1, wenn kein Modell vorhanden ist.
Wenn Sie die Breite einer bestimmten Spalte auf einen festen Wert festlegen möchten, rufen Sie ` QHeaderView::resizeSection()` für die Kopfzeile der Ansicht auf.
Wenn Sie diese Funktion in einer Unterklasse neu implementieren, beachten Sie, dass der von Ihnen zurückgegebene Wert nur verwendet wird, wenn ` resizeColumnToContents()` aufgerufen wird. In diesem Fall wird stattdessen die Breite verwendet, die entweder von der Kopfzeile der Ansicht oder vom Element-Delegaten gefordert wird, falls diese größer ist.
Siehe auch ` QWidget::sizeHint`, ` header()` und ` QHeaderView::resizeContentsPrecision()`.
[slot] void QTreeView::sortByColumn(int column, Qt::SortOrder order)
Sortiert das Modell nach den Werten in den angegebenen Feldern „ column “ und „ order “.
column Kann den Wert -1 annehmen; in diesem Fall wird kein Sortierindikator angezeigt und das Modell kehrt zu seiner natürlichen, unsortierten Reihenfolge zurück. Beachten Sie, dass nicht alle Modelle dies unterstützen und in diesem Fall sogar abstürzen können.
Siehe auch sortingEnabled.
[override virtual protected] void QTreeView::timerEvent(QTimerEvent *event)
Umsetzt: ` QAbstractItemView::timerEvent(QTimerEvent *event)`.
int QTreeView::treePosition() const
Gibt den logischen Index zurück, auf dem der Baum gesetzt ist. Ist der Rückgabewert -1, wird der Baum auf den visuellen Index 0 gesetzt.
Siehe auch ` setTreePosition()`.
[override virtual protected] void QTreeView::updateGeometries()
Implementiert: QAbstractItemView::updateGeometries().
[override virtual protected] int QTreeView::verticalOffset() const
Implementiert neu: ` QAbstractItemView::verticalOffset()` const.
Gibt den vertikalen Versatz der Elemente in der Baumansicht zurück.
Siehe auch horizontalOffset().
[override virtual protected] bool QTreeView::viewportEvent(QEvent *event)
Umsetzt: QAbstractItemView::viewportEvent(QEvent *event).
[override virtual protected] QSize QTreeView::viewportSizeHint() const
Implementiert: QAbstractItemView::viewportSizeHint() const.
[override virtual] QRect QTreeView::visualRect(const QModelIndex &index) const
Implementiert: ` QAbstractItemView::visualRect(const QModelIndex &index) const`.
Gibt das Rechteck im Ansichtsbereich zurück, das das Element unter index einnimmt. Wenn der Index nicht sichtbar oder explizit ausgeblendet ist, ist das zurückgegebene Rechteck ungültig.
Siehe auch ` itemDecorationRect()`.
[override virtual protected] QRegion QTreeView::visualRegionForSelection(const QItemSelection &selection) const
Implementiert: ` QAbstractItemView::visualRegionForSelection(const QItemSelection &selection) const`.
Gibt das Rechteck aus dem Ansichtsbereich der Elemente in dem angegebenen ` selection` zurück.
Seit Version 4.7 enthält der zurückgegebene Bereich nur noch Rechtecke, die den Ansichtsbereich schneiden (oder darin enthalten sind).
© 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.