QHeaderView Class
Die Klasse QHeaderView bietet eine Kopfzeile oder Kopfspalte für Elementansichten. Mehr...
Kopfzeile: | #include <QHeaderView> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
Vererbungen: | QAbstractItemView |
Öffentliche Typen
enum | ResizeMode { Interactive, Fixed, Stretch, ResizeToContents, Custom } |
Eigenschaften
|
|
Öffentliche Funktionen
QHeaderView(Qt::Orientation orientation, QWidget *parent = nullptr) | |
virtual | ~QHeaderView() |
bool | cascadingSectionResizes() const |
int | count() const |
Qt::Alignment | defaultAlignment() const |
int | defaultSectionSize() const |
int | hiddenSectionCount() const |
void | hideSection(int logicalIndex) |
bool | highlightSections() const |
bool | isFirstSectionMovable() const |
bool | isSectionHidden(int logicalIndex) const |
bool | isSortIndicatorClearable() const |
bool | isSortIndicatorShown() const |
int | length() const |
int | logicalIndex(int visualIndex) const |
int | logicalIndexAt(const QPoint &pos) const |
int | logicalIndexAt(int position) const |
int | logicalIndexAt(int x, int y) const |
int | maximumSectionSize() const |
int | minimumSectionSize() const |
void | moveSection(int from, int to) |
int | offset() const |
Qt::Orientation | orientation() const |
void | resetDefaultSectionSize() |
int | resizeContentsPrecision() const |
void | resizeSection(int logicalIndex, int size) |
void | resizeSections(QHeaderView::ResizeMode mode) |
bool | restoreState(const QByteArray &state) |
QByteArray | saveState() const |
int | sectionPosition(int logicalIndex) const |
QHeaderView::ResizeMode | sectionResizeMode(int logicalIndex) const |
int | sectionSize(int logicalIndex) const |
int | sectionSizeHint(int logicalIndex) const |
int | sectionViewportPosition(int logicalIndex) const |
bool | sectionsClickable() const |
bool | sectionsHidden() const |
bool | sectionsMovable() const |
bool | sectionsMoved() const |
void | setCascadingSectionResizes(bool enable) |
void | setDefaultAlignment(Qt::Alignment alignment) |
void | setDefaultSectionSize(int size) |
void | setFirstSectionMovable(bool movable) |
void | setHighlightSections(bool highlight) |
void | setMaximumSectionSize(int size) |
void | setMinimumSectionSize(int size) |
void | setResizeContentsPrecision(int precision) |
void | setSectionHidden(int logicalIndex, bool hide) |
void | setSectionResizeMode(QHeaderView::ResizeMode mode) |
void | setSectionResizeMode(int logicalIndex, QHeaderView::ResizeMode mode) |
void | setSectionsClickable(bool clickable) |
void | setSectionsMovable(bool movable) |
void | setSortIndicator(int logicalIndex, Qt::SortOrder order) |
void | setSortIndicatorClearable(bool clearable) |
void | setSortIndicatorShown(bool show) |
void | setStretchLastSection(bool stretch) |
void | showSection(int logicalIndex) |
Qt::SortOrder | sortIndicatorOrder() const |
int | sortIndicatorSection() const |
bool | stretchLastSection() const |
int | stretchSectionCount() const |
void | swapSections(int first, int second) |
int | visualIndex(int logicalIndex) const |
int | visualIndexAt(int position) const |
Reimplementierte öffentliche Funktionen
virtual void | reset() override |
virtual void | setModel(QAbstractItemModel *model) override |
virtual void | setVisible(bool v) override |
virtual QSize | sizeHint() const override |
Öffentliche Slots
void | headerDataChanged(Qt::Orientation orientation, int logicalFirst, int logicalLast) |
void | setOffset(int offset) |
void | setOffsetToLastSection() |
void | setOffsetToSectionPosition(int visualSectionNumber) |
Signale
void | geometriesChanged() |
void | sectionClicked(int logicalIndex) |
void | sectionCountChanged(int oldCount, int newCount) |
void | sectionDoubleClicked(int logicalIndex) |
void | sectionEntered(int logicalIndex) |
void | sectionHandleDoubleClicked(int logicalIndex) |
void | sectionMoved(int logicalIndex, int oldVisualIndex, int newVisualIndex) |
void | sectionPressed(int logicalIndex) |
void | sectionResized(int logicalIndex, int oldSize, int newSize) |
void | sortIndicatorChanged(int logicalIndex, Qt::SortOrder order) |
void | sortIndicatorClearableChanged(bool clearable) |
Geschützte Funktionen
virtual void | initStyleOption(QStyleOptionHeader *option) const |
(since 6.0) virtual void | initStyleOptionForIndex(QStyleOptionHeader *option, int logicalIndex) const |
virtual void | paintSection(QPainter *painter, const QRect &rect, int logicalIndex) const |
virtual QSize | sectionSizeFromContents(int logicalIndex) const |
Reimplementierte geschützte Funktionen
virtual void | currentChanged(const QModelIndex ¤t, const QModelIndex &old) override |
virtual bool | event(QEvent *e) override |
virtual int | horizontalOffset() const override |
virtual void | mouseDoubleClickEvent(QMouseEvent *e) override |
virtual void | mouseMoveEvent(QMouseEvent *e) override |
virtual void | mousePressEvent(QMouseEvent *e) override |
virtual void | mouseReleaseEvent(QMouseEvent *e) override |
virtual void | paintEvent(QPaintEvent *e) override |
virtual void | setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags flags) override |
virtual int | verticalOffset() const override |
virtual bool | viewportEvent(QEvent *e) override |
Geschützte Steckplätze
void | resizeSections() |
void | sectionsAboutToBeRemoved(const QModelIndex &parent, int logicalFirst, int logicalLast) |
void | sectionsInserted(const QModelIndex &parent, int logicalFirst, int logicalLast) |
Detaillierte Beschreibung
Eine QHeaderView zeigt die Kopfzeilen an, die in Elementansichten wie den Klassen QTableView und QTreeView verwendet werden. Sie ersetzt die Klasse QHeader
von Qt3, die zuvor für denselben Zweck verwendet wurde, verwendet aber die Modell-/Ansichtsarchitektur von Qt, um die Konsistenz mit den Klassen der Elementansicht zu gewährleisten.
Die Klasse QHeaderView gehört zu den Model/View-Klassen und ist Teil des Model/View-Frameworks von Qt.
Der Header holt sich die Daten für jeden Abschnitt aus dem Model mit Hilfe der QAbstractItemModel::headerData() Funktion. Sie können die Daten mit der Funktion QAbstractItemModel::setHeaderData() einstellen.
Jeder Header hat eine orientation() und eine Anzahl von Abschnitten, die durch die count() Funktion angegeben werden. Ein Abschnitt bezieht sich auf einen Teil der Kopfzeile - entweder eine Zeile oder eine Spalte, je nach Ausrichtung.
Abschnitte können mit moveSection() und resizeSection() verschoben und in der Größe verändert werden; sie können auch mit hideSection() und showSection() ein- und ausgeblendet werden.
Jeder Abschnitt einer Kopfzeile wird durch eine Abschnitts-ID beschrieben, die durch seine section() angegeben wird, und kann an einer bestimmten visualIndex() in der Kopfzeile platziert werden. Für einen Abschnitt kann mit setSortIndicator() ein Sortierkennzeichen gesetzt werden, das angibt, ob die Elemente in der zugehörigen Elementansicht in der durch den Abschnitt vorgegebenen Reihenfolge sortiert werden sollen.
Bei einer horizontalen Kopfzeile entspricht der Abschnitt einer Spalte im Modell und bei einer vertikalen Kopfzeile entspricht der Abschnitt einer Zeile im Modell.
Verschieben von Kopfzeilenabschnitten
Eine Kopfzeile kann an Ort und Stelle fixiert oder mit setSectionsMovable() verschoben werden. Sie kann mit setSectionsClickable() anklickbar gemacht werden und hat ein Größenänderungsverhalten gemäß setSectionResizeMode().
Hinweis: Ein Doppelklick auf eine Kopfzeile, um die Größe eines Abschnitts zu ändern, gilt nur für sichtbare Zeilen.
Eine Kopfzeile sendet sectionMoved(), wenn der Benutzer einen Abschnitt verschiebt, sectionResized(), wenn der Benutzer die Größe eines Abschnitts ändert, und sectionClicked() sowie sectionHandleDoubleClicked() als Reaktion auf Mausklicks. Eine Kopfzeile sendet auch sectionCountChanged().
Sie können einen Abschnitt mit den Funktionen logicalIndex() und logicalIndexAt() oder über seine Indexposition mit den Funktionen visualIndex() und visualIndexAt() identifizieren. Der visuelle Index ändert sich, wenn ein Abschnitt verschoben wird, aber der logische Index ändert sich nicht.
Das Erscheinungsbild
QTableWidget und QTableView erzeugen Standardüberschriften. Wenn Sie möchten, dass die Kopfzeilen sichtbar sind, können Sie setVisible() verwenden.
Nicht alle ItemDataRolehaben einen Effekt auf eine QHeaderView. Wenn Sie andere Rollen zeichnen müssen, können Sie QHeaderView subclass und paintEvent() neu implementieren. QHeaderView respektiert die folgenden Elementdatenrollen, es sei denn, sie stehen in Konflikt mit dem Stil (was bei Stilen, die dem Desktop-Theme folgen, vorkommen kann):
TextAlignmentRole, DisplayRole, FontRole, DecorationRole, ForegroundRole, und BackgroundRole.
Hinweis: Jede Kopfzeile rendert die Daten für jeden Abschnitt selbst und ist nicht auf einen Delegaten angewiesen. Folglich hat der Aufruf der Funktion setItemDelegate() einer Kopfzeile keine Auswirkungen.
Siehe auch Modell-/Ansichtsprogrammierung, QListView, QTableView, und QTreeView.
Dokumentation der Mitgliedstypen
enum QHeaderView::ResizeMode
Der Größenänderungsmodus legt das Verhalten der Kopfzeilenabschnitte fest. Er kann für die gesamte Kopfzeilenansicht oder für einzelne Abschnitte mit setSectionResizeMode() eingestellt werden.
Konstante | Wert | Beschreibung |
---|---|---|
QHeaderView::Interactive | 0 | Der Benutzer kann die Größe des Abschnitts ändern. Die Größe des Abschnitts kann auch programmatisch mit resizeSection() geändert werden. Die Standardgröße des Abschnitts ist defaultSectionSize. (Siehe auch cascadingSectionResizes.) |
QHeaderView::Fixed | 2 | Der Benutzer kann die Größe des Abschnitts nicht ändern. Die Größe des Abschnitts kann nur programmgesteuert mit resizeSection() geändert werden. Der Standardwert für die Größe des Abschnitts ist defaultSectionSize. |
QHeaderView::Stretch | 1 | QHeaderView wird die Größe des Abschnitts automatisch so angepasst, dass er den verfügbaren Platz ausfüllt. Die Größe kann weder vom Benutzer noch programmgesteuert geändert werden. |
QHeaderView::ResizeToContents | 3 | QHeaderView passt die Größe des Abschnitts automatisch an die optimale Größe an, basierend auf dem Inhalt der gesamten Spalte oder Zeile. Die Größe kann weder vom Benutzer noch programmgesteuert geändert werden. (Dieser Wert wurde in 4.2 eingeführt) |
Die folgenden Werte sind obsolet:
Konstante | Wert | Beschreibung |
---|---|---|
QHeaderView::Custom | Fixed | Verwenden Sie stattdessen Fixed. |
Siehe auch setSectionResizeMode(), stretchLastSection, und minimumSectionSize.
Dokumentation der Eigenschaft
cascadingSectionResizes : bool
Diese Eigenschaft legt fest, ob die interaktive Größenänderung kaskadenartig auf die folgenden Abschnitte übertragen wird, sobald der Abschnitt, dessen Größe vom Benutzer geändert wird, seine Mindestgröße erreicht hat
Diese Eigenschaft wirkt sich nur auf Abschnitte aus, die Interactive als Größenänderungsmodus haben.
Der Standardwert ist false.
Zugriffsfunktionen:
bool | cascadingSectionResizes() const |
void | setCascadingSectionResizes(bool enable) |
Siehe auch setSectionResizeMode().
defaultAlignment : Qt::Alignment
Diese Eigenschaft enthält die Standardausrichtung des Textes in jedem Kopfabschnitt
Zugriffsfunktionen:
Qt::Alignment | defaultAlignment() const |
void | setDefaultAlignment(Qt::Alignment alignment) |
defaultSectionSize : int
Diese Eigenschaft enthält die Standardgröße der Kopfzeilenabschnitte vor der Größenänderung.
Diese Eigenschaft wirkt sich nur auf Abschnitte aus, deren Größenänderungsmodus Interactive oder Fixed ist.
Standardmäßig ist der Wert dieser Eigenschaft stilabhängig. Wenn sich also der Stil ändert, wird diese Eigenschaft entsprechend aktualisiert. Ein Aufruf von setDefaultSectionSize() stoppt die Aktualisierungen, ein Aufruf von resetDefaultSectionSize() stellt das Standardverhalten wieder her.
Zugriffsfunktionen:
int | defaultSectionSize() const |
void | setDefaultSectionSize(int size) |
void | resetDefaultSectionSize() |
Siehe auch setSectionResizeMode() und minimumSectionSize.
firstSectionMovable : bool
Diese Eigenschaft steuert, ob die erste Spalte vom Benutzer verschoben werden kann
Mit dieser Eigenschaft wird gesteuert, ob die erste Spalte vom Benutzer verschoben werden kann. In einer QTreeView enthält die erste Spalte die Baumstruktur und ist daher standardmäßig nicht verschiebbar, auch nicht nach setSectionsMovable(true).
Sie kann, z. B. bei flachen Listen ohne Baumstruktur, durch Aufruf dieser Methode wieder beweglich gemacht werden. In einem solchen Fall empfiehlt es sich, auch QTreeView::setRootIsDecorated(false) aufzurufen.
treeView->setRootIsDecorated(false); treeView->header()->setFirstSectionMovable(true);
Das Setzen auf true hat keine Auswirkung, wenn nicht auch setSectionsMovable(true) aufgerufen wird.
Zugriffsfunktionen:
bool | isFirstSectionMovable() const |
void | setFirstSectionMovable(bool movable) |
Siehe auch setSectionsMovable().
highlightSections : bool
Diese Eigenschaft legt fest, ob die Abschnitte, die ausgewählte Elemente enthalten, hervorgehoben werden
Standardmäßig ist diese Eigenschaft false
.
Zugriffsfunktionen:
bool | highlightSections() const |
void | setHighlightSections(bool highlight) |
maximumSectionSize : int
Diese Eigenschaft enthält die maximale Größe der Kopfzeilenabschnitte.
Die maximale Abschnittsgröße ist die größte zulässige Abschnittsgröße. Der Standardwert für diese Eigenschaft ist 1048575, was auch die größtmögliche Größe für einen Abschnitt ist. Wird maximum auf -1 gesetzt, wird der Wert auf die größte Abschnittsgröße zurückgesetzt.
Mit Ausnahme von stretch wird diese Eigenschaft von allen resize modes
Zugriffsfunktionen:
int | maximumSectionSize() const |
void | setMaximumSectionSize(int size) |
Siehe auch setSectionResizeMode() und defaultSectionSize.
minimumSectionSize : int
Diese Eigenschaft enthält die Mindestgröße der Kopfabschnitte.
Die minimale Abschnittsgröße ist die kleinste zulässige Abschnittsgröße. Wenn die minimale Abschnittsgröße auf -1 gesetzt ist, verwendet QHeaderView die Größe von font metrics.
Diese Eigenschaft wird von allen resize modes beachtet.
Zugriffsfunktionen:
int | minimumSectionSize() const |
void | setMinimumSectionSize(int size) |
Siehe auch setSectionResizeMode() und defaultSectionSize.
sectionsClickable : bool
Hält true
, wenn die Kopfzeile anklickbar ist; andernfalls false
. Eine anklickbare Kopfzeile könnte so eingerichtet werden, dass der Benutzer die Darstellung der Daten in der Ansicht, die sich auf die Kopfzeile bezieht, ändern kann.
Zugriffsfunktionen:
bool | sectionsClickable() const |
void | setSectionsClickable(bool clickable) |
Siehe auch sectionPressed() und setSortIndicatorShown().
sectionsMovable : bool
Wenn sectionsMovable wahr ist, können die Kopfzeilenabschnitte vom Benutzer verschoben werden; andernfalls sind sie an ihrem Platz fixiert.
Bei Verwendung in Kombination mit QTreeView ist die erste Spalte standardmäßig nicht verschiebbar (da sie die Baumstruktur enthält). Sie können sie mit setFirstSectionMovable(true) verschieben.
Zugriffsfunktionen:
bool | sectionsMovable() const |
void | setSectionsMovable(bool movable) |
Siehe auch sectionMoved() und setFirstSectionMovable().
showSortIndicator : bool
Diese Eigenschaft legt fest, ob der Sortierindikator angezeigt wird
Standardmäßig ist diese Eigenschaft false
.
Zugriffsfunktionen:
bool | isSortIndicatorShown() const |
void | setSortIndicatorShown(bool show) |
Siehe auch setSectionsClickable().
[since 6.1]
sortIndicatorClearable : bool
Diese Eigenschaft legt fest, ob der Sortierindikator durch mehrfaches Anklicken eines Abschnitts gelöscht werden kann
Diese Eigenschaft steuert, ob der Benutzer den Sortierindikator für einen bestimmten Abschnitt durch mehrfaches Anklicken des Abschnitts entfernen kann. Normalerweise wird durch das Anklicken eines Abschnitts lediglich die Sortierreihenfolge für diesen Abschnitt geändert. Wenn Sie diese Eigenschaft auf true setzen, wird der Sortierindikator nach dem Wechsel zu aufsteigend und absteigend gelöscht; dadurch wird normalerweise die ursprüngliche Sortierung eines Modells wiederhergestellt.
Das Setzen dieser Eigenschaft auf true hat keine Auswirkung, es sei denn, sectionsClickable() ist ebenfalls true (was die Vorgabe für bestimmte Ansichten ist, z.B. QTableView, oder automatisch gesetzt wird, wenn eine Ansicht sortierbar gemacht wird, z.B. durch den Aufruf von QTreeView::setSortingEnabled).
Diese Eigenschaft wurde in Qt 6.1 eingeführt.
Zugriffsfunktionen:
bool | isSortIndicatorClearable() const |
void | setSortIndicatorClearable(bool clearable) |
Notifier-Signal:
void | sortIndicatorClearableChanged(bool clearable) |
stretchLastSection : bool
Diese Eigenschaft legt fest, ob der letzte sichtbare Abschnitt in der Kopfzeile den gesamten verfügbaren Platz einnimmt.
Der Standardwert ist false.
Hinweis: Die horizontalen Kopfzeilen, die von QTreeView bereitgestellt werden, werden mit dieser Eigenschaft auf true konfiguriert, um sicherzustellen, dass die Ansicht keinen Platz verschwendet, der ihr für ihre Kopfzeile zugewiesen wurde. Wenn dieser Wert auf true gesetzt ist, setzt diese Eigenschaft den Größenänderungsmodus für den letzten Abschnitt in der Kopfzeile außer Kraft.
Zugriffsfunktionen:
bool | stretchLastSection() const |
void | setStretchLastSection(bool stretch) |
Siehe auch setSectionResizeMode().
Dokumentation der Mitgliedsfunktionen
[explicit]
QHeaderView::QHeaderView(Qt::Orientation orientation, QWidget *parent = nullptr)
Erzeugt einen neuen generischen Header mit dem angegebenen orientation und parent.
[virtual noexcept]
QHeaderView::~QHeaderView()
Zerstört die Kopfzeile.
int QHeaderView::count() const
Gibt die Anzahl der Abschnitte in der Kopfzeile zurück.
Siehe auch sectionCountChanged() und length().
[override virtual protected]
void QHeaderView::currentChanged(const QModelIndex ¤t, const QModelIndex &old)
Reimplements: QAbstractItemView::currentChanged(const QModelIndex ¤t, const QModelIndex &previous).
[override virtual protected]
bool QHeaderView::event(QEvent *e)
Reimplements: QAbstractItemView::event(QEvent *Event).
[signal]
void QHeaderView::geometriesChanged()
Dieses Signal wird ausgegeben, wenn sich die Geometrien des Kopfes geändert haben.
[slot]
void QHeaderView::headerDataChanged(Qt::Orientation orientation, int logicalFirst, int logicalLast)
Aktualisiert die geänderten Kopfabschnitte mit dem angegebenen orientation, von logicalFirst bis einschließlich logicalLast.
int QHeaderView::hiddenSectionCount() const
Gibt die Anzahl der Abschnitte in der Kopfzeile zurück, die ausgeblendet wurden.
Siehe auch setSectionHidden() und isSectionHidden().
void QHeaderView::hideSection(int logicalIndex)
Blendet den durch logicalIndex angegebenen Abschnitt aus.
Siehe auch showSection(), isSectionHidden(), hiddenSectionCount(), und setSectionHidden().
[override virtual protected]
int QHeaderView::horizontalOffset() const
Reimplements: QAbstractItemView::horizontalOffset() const.
Gibt den horizontalen Versatz der Kopfzeile zurück. Für vertikale Kopfzeilen ist dieser Wert 0.
Siehe auch offset().
[virtual protected]
void QHeaderView::initStyleOption(QStyleOptionHeader *option) const
Initialisieren Sie option mit den Werten aus dieser QHeaderView. Diese Methode ist für Unterklassen nützlich, wenn sie eine QStyleOptionHeader benötigen, aber nicht alle Informationen selbst ausfüllen wollen.
Siehe auch QStyleOption::initFrom() und initStyleOptionForIndex().
[virtual protected, since 6.0]
void QHeaderView::initStyleOptionForIndex(QStyleOptionHeader *option, int logicalIndex) const
Initialisiert den Stil option aus dem angegebenen logicalIndex. Diese Funktion wird von der Standardimplementierung von paintSection aufgerufen, nachdem initStyleOption aufgerufen wurde.
Diese Funktion wurde in Qt 6.0 eingeführt.
Siehe auch paintSection() und initStyleOption().
bool QHeaderView::isSectionHidden(int logicalIndex) const
Gibt true
zurück, wenn der durch logicalIndex angegebene Abschnitt ausdrücklich vor dem Benutzer verborgen ist; andernfalls wird false
zurückgegeben.
Siehe auch hideSection(), showSection(), setSectionHidden(), und hiddenSectionCount().
int QHeaderView::length() const
Gibt die Länge entlang der Ausrichtung der Kopfzeile zurück.
Siehe auch sizeHint(), setSectionResizeMode(), und offset().
int QHeaderView::logicalIndex(int visualIndex) const
Gibt den logicalIndex für den Abschnitt an der angegebenen Position visualIndex zurück, oder -1, wenn visualIndex < 0 oder visualIndex >= QHeaderView::count().
Beachten Sie, dass visualIndex nicht von versteckten Abschnitten beeinflusst wird.
Siehe auch visualIndex() und sectionPosition().
int QHeaderView::logicalIndexAt(const QPoint &pos) const
Gibt den logischen Index des Abschnitts an der in pos angegebenen Position zurück. Wenn die Kopfzeile horizontal ist, wird die x-Koordinate verwendet, andernfalls die y-Koordinate, um den logischen Index zu finden.
Siehe auch sectionPosition().
int QHeaderView::logicalIndexAt(int position) const
Gibt den Abschnitt zurück, der die angegebene position im Ansichtsfenster abdeckt.
Siehe auch visualIndexAt() und isSectionHidden().
int QHeaderView::logicalIndexAt(int x, int y) const
Gibt den logischen Index des Abschnitts an der angegebenen Koordinate zurück. Wenn die Kopfzeile horizontal ist, wird x verwendet, andernfalls wird y verwendet, um den logischen Index zu finden.
[override virtual protected]
void QHeaderView::mouseDoubleClickEvent(QMouseEvent *e)
Reimplements: QAbstractItemView::mouseDoubleClickEvent(QMouseEvent *event).
[override virtual protected]
void QHeaderView::mouseMoveEvent(QMouseEvent *e)
Reimplements: QAbstractItemView::mouseMoveEvent(QMouseEvent *event).
[override virtual protected]
void QHeaderView::mousePressEvent(QMouseEvent *e)
Reimplements: QAbstractItemView::mousePressEvent(QMouseEvent *event).
[override virtual protected]
void QHeaderView::mouseReleaseEvent(QMouseEvent *e)
Reimplements: QAbstractItemView::mouseReleaseEvent(QMouseEvent *event).
void QHeaderView::moveSection(int from, int to)
Verschiebt den Abschnitt mit dem visuellen Index from auf den visuellen Index to.
Siehe auch sectionsMoved().
int QHeaderView::offset() const
Gibt den Versatz der Kopfzeile zurück: Dies ist der äußerste linke (oder oberste bei vertikalen Kopfzeilen) sichtbare Pixel der Kopfzeile.
Siehe auch setOffset().
Qt::Orientation QHeaderView::orientation() const
Gibt die Ausrichtung der Kopfzeile zurück.
Siehe auch Qt::Orientation.
[override virtual protected]
void QHeaderView::paintEvent(QPaintEvent *e)
Reimplements: QAbstractScrollArea::paintEvent(QPaintEvent *event).
[virtual protected]
void QHeaderView::paintSection(QPainter *painter, const QRect &rect, int logicalIndex) const
Zeichnet den durch die angegebene logicalIndex angegebenen Bereich unter Verwendung der angegebenen painter und rect.
Normalerweise müssen Sie diese Funktion nicht aufrufen.
[override virtual]
void QHeaderView::reset()
Reimplements: QAbstractItemView::reset().
int QHeaderView::resizeContentsPrecision() const
Gibt zurück, wie genau QHeaderView auf ResizeToContents berechnet.
Siehe auch setResizeContentsPrecision() und setSectionResizeMode().
void QHeaderView::resizeSection(int logicalIndex, int size)
Ändert die Größe des durch logicalIndex angegebenen Abschnitts auf size, gemessen in Pixeln. Der Parameter size muss ein Wert größer oder gleich Null sein. Eine Größe gleich Null ist jedoch nicht empfehlenswert. In diesem Fall sollte stattdessen hideSection verwendet werden.
Siehe auch sectionResized(), sectionSize(), und hideSection().
[protected slot]
void QHeaderView::resizeSections()
Ändert die Größe der Abschnitte entsprechend den Größenhinweisen. Normalerweise müssen Sie diese Funktion nicht aufrufen.
void QHeaderView::resizeSections(QHeaderView::ResizeMode mode)
Ändert die Größe der Abschnitte entsprechend der angegebenen mode. Dabei wird der aktuelle Größenänderungsmodus ignoriert.
Siehe auch sectionResized().
bool QHeaderView::restoreState(const QByteArray &state)
Stellt die state dieser Kopfansicht wieder her. Diese Funktion gibt true
zurück, wenn der Zustand wiederhergestellt wurde; andernfalls wird false zurückgegeben.
Siehe auch saveState().
QByteArray QHeaderView::saveState() const
Speichert den aktuellen Zustand dieser Kopfzeilenansicht.
Um den gespeicherten Zustand wiederherzustellen, übergeben Sie den Rückgabewert an restoreState().
Siehe auch restoreState().
[signal]
void QHeaderView::sectionClicked(int logicalIndex)
Dieses Signal wird ausgegeben, wenn ein Abschnitt angeklickt wird. Der logische Index des Abschnitts wird durch logicalIndex angegeben.
Beachten Sie, dass auch das Signal sectionPressed ausgegeben wird.
Siehe auch setSectionsClickable() und sectionPressed().
[signal]
void QHeaderView::sectionCountChanged(int oldCount, int newCount)
Dieses Signal wird ausgegeben, wenn sich die Anzahl der Abschnitte ändert, d. h. wenn Abschnitte hinzugefügt oder gelöscht werden. Die ursprüngliche Anzahl wird durch oldCount angegeben, die neue Anzahl durch newCount.
Siehe auch count(), length(), und headerDataChanged().
[signal]
void QHeaderView::sectionDoubleClicked(int logicalIndex)
Dieses Signal wird ausgegeben, wenn ein Abschnitt doppelt angeklickt wird. Der logische Index des Abschnitts wird durch logicalIndex angegeben.
Siehe auch setSectionsClickable().
[signal]
void QHeaderView::sectionEntered(int logicalIndex)
Dieses Signal wird ausgegeben, wenn sich der Cursor über dem Abschnitt befindet und die linke Maustaste gedrückt wird. Der logische Index des Abschnitts wird durch logicalIndex angegeben.
Siehe auch setSectionsClickable() und sectionPressed().
[signal]
void QHeaderView::sectionHandleDoubleClicked(int logicalIndex)
Dieses Signal wird ausgegeben, wenn ein Abschnitt doppelt angeklickt wird. Der logische Index des Abschnitts wird durch logicalIndex angegeben.
Siehe auch setSectionsClickable().
[signal]
void QHeaderView::sectionMoved(int logicalIndex, int oldVisualIndex, int newVisualIndex)
Dieses Signal wird ausgesendet, wenn ein Abschnitt verschoben wird. Der logische Index des Abschnitts wird durch logicalIndex angegeben, der alte Index durch oldVisualIndex und die neue Indexposition durch newVisualIndex.
Siehe auch moveSection().
int QHeaderView::sectionPosition(int logicalIndex) const
Gibt die Position des Abschnitts des angegebenen logicalIndex zurück, oder -1, wenn der Abschnitt ausgeblendet ist. Die Position wird in Pixeln von der oberen linken Ecke des ersten sichtbaren Elements bis zur oberen linken Ecke des Elements mit logicalIndex gemessen. Die Messung erfolgt entlang der x-Achse für horizontale Kopfzeilen und entlang der y-Achse für vertikale Kopfzeilen.
Siehe auch sectionViewportPosition().
[signal]
void QHeaderView::sectionPressed(int logicalIndex)
Dieses Signal wird ausgegeben, wenn ein Abschnitt gedrückt wird. Der logische Index des Abschnitts wird durch logicalIndex angegeben.
Siehe auch setSectionsClickable().
QHeaderView::ResizeMode QHeaderView::sectionResizeMode(int logicalIndex) const
Gibt den Größenänderungsmodus zurück, der für den durch die angegebene logicalIndex angegebenen Abschnitt gilt.
Siehe auch setSectionResizeMode().
[signal]
void QHeaderView::sectionResized(int logicalIndex, int oldSize, int newSize)
Dieses Signal wird ausgegeben, wenn die Größe eines Abschnitts geändert wird. Die logische Nummer des Abschnitts wird durch logicalIndex angegeben, die alte Größe durch oldSize und die neue Größe durch newSize.
Siehe auch resizeSection().
int QHeaderView::sectionSize(int logicalIndex) const
Gibt die Breite (oder Höhe für vertikale Kopfzeilen) der angegebenen logicalIndex zurück.
Siehe auch length(), setSectionResizeMode(), und defaultSectionSize().
[virtual protected]
QSize QHeaderView::sectionSizeFromContents(int logicalIndex) const
Gibt die Größe des Inhalts des Abschnitts zurück, der durch den angegebenen logicalIndex angegeben wird.
Siehe auch defaultSectionSize().
int QHeaderView::sectionSizeHint(int logicalIndex) const
Gibt einen geeigneten Größenhinweis für den durch logicalIndex angegebenen Abschnitt zurück.
Siehe auch sizeHint(), defaultSectionSize(), minimumSectionSize(), und maximumSectionSize().
int QHeaderView::sectionViewportPosition(int logicalIndex) const
Gibt die Position des Abschnitts im Ansichtsfenster des angegebenen logicalIndex zurück.
Wenn der Abschnitt ausgeblendet ist, ist der Rückgabewert undefiniert.
Siehe auch sectionPosition() und isSectionHidden().
[protected slot]
void QHeaderView::sectionsAboutToBeRemoved(const QModelIndex &parent, int logicalFirst, int logicalLast)
Dieser Slot wird aufgerufen, wenn Abschnitte aus dem parent entfernt werden. logicalFirst und logicalLast geben an, wo die Abschnitte entfernt wurden.
Wenn nur ein Abschnitt entfernt wird, sind logicalFirst und logicalLast identisch.
bool QHeaderView::sectionsClickable() const
Gibt sectionsClickable zurück.
Hinweis: Getter-Funktion für die Eigenschaft sectionsClickable.
Siehe auch setSectionsClickable().
bool QHeaderView::sectionsHidden() const
Gibt true
zurück, wenn Abschnitte in der Kopfzeile ausgeblendet wurden; andernfalls wird false zurückgegeben;
Siehe auch setSectionHidden().
[protected slot]
void QHeaderView::sectionsInserted(const QModelIndex &parent, int logicalFirst, int logicalLast)
Dieser Slot wird aufgerufen, wenn Abschnitte in parent eingefügt werden. Die Indizes logicalFirst und logicalLast geben an, wo die neuen Abschnitte eingefügt wurden.
Wenn nur ein Abschnitt eingefügt wird, sind logicalFirst und logicalLast identisch.
bool QHeaderView::sectionsMovable() const
Gibt sectionsMovable zurück.
Hinweis: Getter-Funktion für die Eigenschaft sectionsMovable.
Siehe auch setSectionsMovable().
bool QHeaderView::sectionsMoved() const
Gibt true
zurück, wenn Abschnitte in der Kopfzeile verschoben wurden; andernfalls wird false zurückgegeben;
Siehe auch moveSection().
[override virtual]
void QHeaderView::setModel(QAbstractItemModel *model)
Reimplements: QAbstractItemView::setModel(QAbstractItemModel *model).
[slot]
void QHeaderView::setOffset(int offset)
Setzt den Offset der Kopfzeile auf offset.
Siehe auch offset() und length().
[slot]
void QHeaderView::setOffsetToLastSection()
Legt den Versatz fest, um den letzten Abschnitt sichtbar zu machen.
Siehe auch setOffset(), sectionPosition(), und setOffsetToSectionPosition().
[slot]
void QHeaderView::setOffsetToSectionPosition(int visualSectionNumber)
Setzt den Versatz zum Beginn des Abschnitts an der angegebenen visualSectionNumber. visualSectionNumber ist der tatsächlich sichtbare Abschnitt, wenn hiddenSections nicht berücksichtigt werden. Das ist nicht immer dasselbe wie visualIndex().
Siehe auch setOffset() und sectionPosition().
void QHeaderView::setResizeContentsPrecision(int precision)
Legt fest, wie genau QHeaderView die Größe berechnen soll, wenn ResizeToContents verwendet wird. Ein niedriger Wert sorgt für eine weniger genaue, aber schnelle automatische Größenanpassung, während ein höherer Wert eine genauere Größenanpassung bewirkt, die jedoch langsam sein kann.
Die Zahl precision gibt an, wie viele Abschnitte bei der Berechnung der bevorzugten Größe berücksichtigt werden sollen.
Der Standardwert ist 1000, was bedeutet, dass eine horizontale Spalte mit automatischer Größenanpassung maximal 1000 Zeilen bei der Berechnung der automatischen Größenanpassung berücksichtigt.
Der spezielle Wert 0 bedeutet, dass nur der sichtbare Bereich berücksichtigt wird. Der spezielle Wert -1 bedeutet, dass alle Elemente betrachtet werden.
Dieser Wert wird in QTableView::sizeHintForColumn(), QTableView::sizeHintForRow() und QTreeView::sizeHintForColumn() verwendet. Eine Neuimplementierung dieser Funktionen kann dazu führen, dass diese Funktion keine Wirkung hat.
Siehe auch resizeContentsPrecision(), setSectionResizeMode(), resizeSections(), QTableView::sizeHintForColumn(), QTableView::sizeHintForRow(), und QTreeView::sizeHintForColumn().
void QHeaderView::setSectionHidden(int logicalIndex, bool hide)
Wenn hide wahr ist, wird der durch logicalIndex angegebene Abschnitt ausgeblendet; andernfalls wird der Abschnitt angezeigt.
Siehe auch isSectionHidden() und hiddenSectionCount().
void QHeaderView::setSectionResizeMode(QHeaderView::ResizeMode mode)
Setzt die Beschränkungen für die Größenänderung der Kopfzeile auf die durch die angegebene mode beschriebenen Beschränkungen.
Siehe auch sectionResizeMode(), length(), und sectionResized().
void QHeaderView::setSectionResizeMode(int logicalIndex, QHeaderView::ResizeMode mode)
Legt die Einschränkungen fest, wie der durch logicalIndex angegebene Abschnitt in der Kopfzeile auf die durch den angegebenen mode beschriebenen Größen angepasst werden kann. Der logische Index sollte zum Zeitpunkt des Aufrufs dieser Funktion vorhanden sein.
Hinweis: Diese Einstellung wird für den letzten Abschnitt ignoriert, wenn die Eigenschaft stretchLastSection auf true gesetzt ist. Dies ist die Standardeinstellung für die horizontalen Überschriften, die von QTreeView bereitgestellt werden.
Siehe auch setStretchLastSection() und resizeContentsPrecision().
void QHeaderView::setSectionsClickable(bool clickable)
Setzen Sie sectionsClickable auf clickable.
Hinweis: Setter-Funktion für die Eigenschaft sectionsClickable.
Siehe auch sectionsClickable().
void QHeaderView::setSectionsMovable(bool movable)
Setzt sectionsMovable auf movable.
Hinweis: Setter-Funktion für die Eigenschaft sectionsMovable.
Siehe auch sectionsMovable().
[override virtual protected]
void QHeaderView::setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags flags)
Reimplements: QAbstractItemView::setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags flags).
Wählt die Elemente in der angegebenen rect entsprechend der angegebenen flags aus.
Die Implementierung der Basisklasse tut nichts.
void QHeaderView::setSortIndicator(int logicalIndex, Qt::SortOrder order)
Setzt den Sortierindikator für den Abschnitt, der durch die angegebene logicalIndex angegeben ist, in die durch order angegebene Richtung und entfernt den Sortierindikator von allen anderen Abschnitten, die ihn anzeigten.
logicalIndex kann -1 sein. 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 sortIndicatorSection() und sortIndicatorOrder().
[override virtual]
void QHeaderView::setVisible(bool v)
Reimplantiert eine Zugriffsfunktion für die Eigenschaft: QWidget::visible.
void QHeaderView::showSection(int logicalIndex)
Zeigt den durch logicalIndex angegebenen Abschnitt an.
Siehe auch hideSection(), isSectionHidden(), hiddenSectionCount(), und setSectionHidden().
[override virtual]
QSize QHeaderView::sizeHint() const
Reimplements: QAbstractScrollArea::sizeHint() const.
Gibt einen geeigneten Größenhinweis für diesen Header zurück.
Siehe auch sectionSizeHint().
[signal]
void QHeaderView::sortIndicatorChanged(int logicalIndex, Qt::SortOrder order)
Dieses Signal wird ausgegeben, wenn der Abschnitt, der den Sortierindikator enthält, oder die angegebene Reihenfolge geändert wird. Der logische Index des Abschnitts wird durch logicalIndex und die Sortierreihenfolge durch order angegeben.
Siehe auch setSortIndicator().
Qt::SortOrder QHeaderView::sortIndicatorOrder() const
Gibt die Reihenfolge für den Sortierindikator zurück. Wenn kein Abschnitt einen Sortierindikator hat, ist der Rückgabewert dieser Funktion undefiniert.
Siehe auch setSortIndicator() und sortIndicatorSection().
int QHeaderView::sortIndicatorSection() const
Gibt den logischen Index des Abschnitts zurück, der einen Sortierindikator hat. Standardmäßig ist dies Abschnitt 0.
Siehe auch setSortIndicator(), sortIndicatorOrder(), und setSortIndicatorShown().
int QHeaderView::stretchSectionCount() const
Gibt die Anzahl der Abschnitte zurück, die auf den Größenänderungsmodus Stretch eingestellt sind. In Ansichten kann dies verwendet werden, um zu sehen, ob die Kopfansicht die Größe der Abschnitte ändern muss, wenn sich die Geometrie der Ansicht ändert.
Siehe auch stretchLastSection.
void QHeaderView::swapSections(int first, int second)
Tauscht den Abschnitt mit dem visuellen Index first mit dem Abschnitt mit dem visuellen Index second aus.
Siehe auch moveSection().
[override virtual protected]
int QHeaderView::verticalOffset() const
Reimplements: QAbstractItemView::verticalOffset() const.
Gibt den vertikalen Versatz der Kopfzeile zurück. Dieser ist 0 für horizontale Kopfzeilen.
Siehe auch offset().
[override virtual protected]
bool QHeaderView::viewportEvent(QEvent *e)
Reimplements: QAbstractItemView::viewportEvent(QEvent *Event).
int QHeaderView::visualIndex(int logicalIndex) const
Gibt die Position des visuellen Indexes des Abschnitts zurück, der durch die angegebene logicalIndex angegeben ist, oder andernfalls -1.
Ausgeblendete Abschnitte haben weiterhin gültige visuelle Indizes.
Siehe auch logicalIndex().
int QHeaderView::visualIndexAt(int position) const
Gibt den visuellen Index des Abschnitts zurück, der den angegebenen position im Ansichtsfenster abdeckt.
Siehe auch logicalIndexAt().
© 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.