Класс QHeaderView
Класс QHeaderView предоставляет строку заголовка или столбец заголовка для представлений элементов. Подробнее...
| Заголовок: | #include <QHeaderView> |
| CMake: | find_package(Qt6 COMPONENTS Widgets REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| Наследует: | QAbstractItemView |
Типы публичного доступа
| Перечисление | ResizeMode { Interactive, Fixed, Stretch, ResizeToContents, Custom } |
Свойства
|
|
Публичные функции
| 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(int position) const |
| int | logicalIndexAt(int x, int y) const |
| int | logicalIndexAt(const QPoint &pos) 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 |
Реализованные общедоступные функции
| virtual void | reset() override |
| virtual void | setModel(QAbstractItemModel *model) override |
| virtual void | setVisible(bool v) override |
| virtual QSize | sizeHint() const override |
Открытые слоты
| void | headerDataChanged(Qt::Orientation orientation, int logicalFirst, int logicalLast) |
| void | setOffset(int offset) |
| void | setOffsetToLastSection() |
| void | setOffsetToSectionPosition(int visualSectionNumber) |
Сигналы
| 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) |
Защищенные функции
| virtual void | initStyleOption(QStyleOptionHeader *option) const |
| 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 |
Переопределенные защищенные функции
| 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 |
Защищенные слоты
| void | resizeSections() |
| void | sectionsAboutToBeRemoved(const QModelIndex &parent, int logicalFirst, int logicalLast) |
| void | sectionsInserted(const QModelIndex &parent, int logicalFirst, int logicalLast) |
Подробное описание
Класс QHeaderView отображает заголовки, используемые в представлениях элементов, таких как QTableView и QTreeView. Он заменяет класс Qt3 QHeader, ранее использовавшийся с той же целью, но использует архитектуру модели/представления Qt для согласованности с классами представлений элементов.
Класс QHeaderView является одним из классов модели/представления и входит в состав фреймворка модели/представления Qt.
Заголовок получает данные для каждого раздела из модели с помощью функции QAbstractItemModel::headerData(). Вы можете установить данные, используя QAbstractItemModel::setHeaderData().
Каждый заголовок имеет ориентацию() и определенное количество разделов, указанное функцией count(). Раздел относится к части заголовка — либо строке, либо столбцу, в зависимости от ориентации.
Разделы можно перемещать и изменять размер с помощью moveSection() и resizeSection(); их также можно скрывать и показывать с помощью hideSection() и showSection().
Каждый раздел заголовка описывается идентификатором раздела, указанным section(), и может быть расположен в определенном visualIndex() в заголовке. Для раздела можно установить индикатор сортировки с помощью setSortIndicator(); это указывает, будут ли элементы в соответствующем представлении элементов отсортированы в заданном порядке раздела.
Для горизонтального заголовка раздел эквивалентен столбцу в модели, а для вертикального заголовка раздел эквивалентен строке в модели.
Перемещение разделов заголовка
Заголовок может быть закреплен на месте или сделан перемещаемым с помощью setSectionsMovable(). Он может быть сделан нажимаемым с помощью setSectionsClickable(), и имеет поведение изменения размера в соответствии с setSectionResizeMode().
END_OF_DOCUMENT_MARKERПримечание: Двойной щелчок по заголовку для изменения размера секции применим только к видимым строкам.
Заголовок будет генерировать событие sectionMoved() при перемещении пользователем секции, sectionResized() при изменении размера секции, а также sectionClicked() и sectionHandleDoubleClicked() в ответ на щелчки мыши. Заголовок также будет генерировать событие sectionCountChanged().
Вы можете идентифицировать секцию, используя функции logicalIndex() и logicalIndexAt(), или по её позиционному индексу с помощью функций visualIndex() и visualIndexAt(). Визуальный индекс изменится при перемещении секции, но логический индекс останется неизменным.
Внешний вид
QTableWidget и QTableView создают заголовки по умолчанию. Если вы хотите отобразить заголовки, вы можете использовать setVisible().
Не все ItemDataRole будут оказывать влияние на QHeaderView. Если вам нужно отобразить другие роли, вы можете подклассировать QHeaderView и переопределить paintEvent(). QHeaderView учитывает следующие роли данных элементов, если они не конфликтуют со стилем (что может произойти для стилей, которые следуют за темой рабочего стола):
TextAlignmentRole, DisplayRole, FontRole, DecorationRole, ForegroundRole и BackgroundRole.
Примечание: Каждый заголовок отображает данные для каждой секции самостоятельно и не полагается на делегат. В результате вызов функции setItemDelegate() заголовка не окажет никакого влияния.
См. также Программирование моделей/представлений, QListView, QTableView и QTreeView.
Документация типов членов
Перечисление QHeaderView::ResizeMode
Режим изменения размера определяет поведение секций заголовка. Его можно установить для всего представления заголовка или для отдельных секций, используя setSectionResizeMode().
| Постоянная | Значение | Описание |
|---|---|---|
QHeaderView::Interactive |
0 |
Пользователь может изменять размер секции. Размер секции также можно изменить программно с помощью resizeSection(). Размер секции по умолчанию равен defaultSectionSize. (См. также cascadingSectionResizes.) |
QHeaderView::Fixed |
2 |
Пользователь не может изменять размер секции. Размер секции можно изменить только программно с помощью resizeSection(). Размер секции по умолчанию равен defaultSectionSize. |
QHeaderView::Stretch |
1 |
QHeaderView автоматически изменит размер секции, чтобы заполнить доступное пространство. Размер нельзя изменить ни пользователем, ни программно. |
QHeaderView::ResizeToContents |
3 |
QHeaderView автоматически изменит размер секции до оптимального размера на основе содержимого всего столбца или строки. Размер нельзя изменить ни пользователем, ни программно. (Это значение было добавлено в 4.2) |
Следующие значения устарели:
| Постоянная | Значение | Описание |
|---|---|---|
QHeaderView::Custom |
Fixed |
Используйте Fixed вместо этого. |
См. также setSectionResizeMode(), stretchLastSection и minimumSectionSize.
Документация свойств
cascadingSectionResizes : bool
Это свойство указывает, будет ли каскадное изменение размера взаимодействующих секций переноситься на следующие секции, когда секция, размер которой изменяет пользователь, достигнет своего минимального размера.
Это свойство влияет только на секции, у которых режим изменения размера Interactive.
Значение по умолчанию — false.
Функции доступа:
| bool | cascadingSectionResizes() const |
| void | setCascadingSectionResizes(bool enable) |
См. также setSectionResizeMode().
defaultAlignment : Qt::Alignment
Это свойство содержит выравнивание по умолчанию текста в каждой секции заголовка.
Функции доступа:
| Qt::Alignment | defaultAlignment() const |
| void | setDefaultAlignment(Qt::Alignment alignment) |
defaultSectionSize : int
Это свойство содержит размер секций заголовка по умолчанию до изменения размера.
Это свойство влияет только на секции, у которых режим изменения размера Interactive или Fixed.
По умолчанию значение этого свойства зависит от стиля. Таким образом, при изменении стиля это свойство обновляется из него. Вызов setDefaultSectionSize() останавливает обновления, вызов resetDefaultSectionSize() восстановит поведение по умолчанию.
Функции доступа:
| int | defaultSectionSize() const |
| void | setDefaultSectionSize(int size) |
| void | resetDefaultSectionSize() |
См. также setSectionResizeMode() и minimumSectionSize.
[since 5.11] firstSectionMovable : bool
Это свойство указывает, может ли первая колонка перемещаться пользователем.
Это свойство контролирует, может ли пользователь перемещать первую колонку. В QTreeView первая колонка содержит структуру дерева и поэтому по умолчанию не может перемещаться, даже после вызова setSectionsMovable(true).
Её можно сделать перемещаемой, например, в случае плоских списков без структуры дерева, вызвав этот метод. В такой ситуации рекомендуется также вызвать QTreeView::setRootIsDecorated(false).
Установка в true не оказывает влияния, пока не будет вызвано setSectionsMovable(true).
Это свойство было добавлено в Qt 5.11.
Функции доступа:
| bool | isFirstSectionMovable() const |
| void | setFirstSectionMovable(bool movable) |
См. также setSectionsMovable().
highlightSections : bool
Это свойство указывает, будут ли выделены секции, содержащие выбранные элементы.
По умолчанию это свойство false.
Функции доступа:
| bool | highlightSections() const |
| void | setHighlightSections(bool highlight) |
[since 5.2] maximumSectionSize : int
Это свойство содержит максимальный размер секций заголовка.
Максимальный размер секции — это максимальный допустимый размер секции. Значение по умолчанию для этого свойства — 1048575, что также является максимальным возможным размером секции. Установка maximum в -1 сбросит значение до максимального размера секции.
За исключением растяжения, это свойство учитывается всеми режимами изменения размера
Это свойство было добавлено в Qt 5.2.
Функции доступа:
| int | maximumSectionSize() const |
| void | setMaximumSectionSize(int size) |
См. также setSectionResizeMode() и defaultSectionSize.
minimumSectionSize : int
Это свойство содержит минимальный размер секций заголовка.
Минимальный размер секции — это минимальный допустимый размер секции. Если минимальный размер секции установлен в -1, QHeaderView будет использовать размер метрики шрифта.
Это свойство учитывается всеми режимами изменения размера.
Функции доступа:
| int | minimumSectionSize() const |
| void | setMinimumSectionSize(int size) |
См. также setSectionResizeMode() и defaultSectionSize.
showSortIndicator : bool
Это свойство указывает, отображается ли индикатор сортировки.
По умолчанию это свойство false.
Функции доступа:
| bool | isSortIndicatorShown() const |
| void | setSortIndicatorShown(bool show) |
См. также setSectionsClickable().
[since 6.1] sortIndicatorClearable : bool
Это свойство указывает, можно ли очистить индикатор сортировки, дважды щелкнув по секции.
Это свойство контролирует, может ли пользователь удалить индикатор сортировки в заданной секции, дважды щелкнув по ней. Обычно щелчок по секции просто изменяет порядок сортировки для этой секции. Установив это свойство в true, индикатор сортировки будет очищен после переключения на возрастающий и убывающий порядок; это обычно восстановит исходную сортировку модели.
Установка этого свойства в true не оказывает влияния, если sectionsClickable() также не равно true (что является значением по умолчанию для некоторых представлений, например QTableView, или автоматически устанавливается при создании сортируемого представления, например, при вызове QTreeView::setSortingEnabled).
Это свойство было добавлено в Qt 6.1.
Функции доступа:
| bool | isSortIndicatorClearable() const |
| void | setSortIndicatorClearable(bool clearable) |
Сигнал уведомления:
| void | sortIndicatorClearableChanged(bool clearable) |
stretchLastSection : bool
Это свойство указывает, занимает ли последняя видимая секция в заголовке все доступное пространство.
Значение по умолчанию — false.
Примечание: Горизонтальные заголовки, предоставляемые QTreeView, настроены с этим свойством, установленным в true, гарантируя, что представление не будет тратить ни одного из выделенного ему места для заголовка. Если это значение установлено в true, это свойство переопределит режим изменения размера, установленный для последней секции в заголовке.
Функции доступа:
| bool | stretchLastSection() const |
| void | setStretchLastSection(bool stretch) |
См. также setSectionResizeMode().
Документация функций-членов
QHeaderView::QHeaderView(Qt::Orientation orientation, QWidget *parent = nullptr)
Создаёт новый общий заголовок с заданной orientation и parent.
[signal] void QHeaderView::geometriesChanged()
Этот сигнал испускается, когда геометрия заголовка изменилась.
[slot] void QHeaderView::headerDataChanged(Qt::Orientation orientation, int logicalFirst, int logicalLast)
Обновляет изменённые разделы заголовка с заданным orientation, от logicalFirst до logicalLast включительно.
[protected slot] void QHeaderView::resizeSections()
Изменяет размер разделов в соответствии с их подсказками размера. Обычно, вы не должны вызывать эту функцию.
[signal] void QHeaderView::sectionClicked(int logicalIndex)
Этот сигнал испускается, когда раздел нажат. Логический индекс раздела указан параметром logicalIndex.
Обратите внимание, что также будет испущен сигнал sectionPressed.
См. также setSectionsClickable() и sectionPressed().
[signal] void QHeaderView::sectionCountChanged(int oldCount, int newCount)
Этот сигнал испускается, когда количество разделов меняется, то есть когда разделы добавляются или удаляются. Исходное количество указано oldCount, а новое количество — newCount.
См. также count(), length() и headerDataChanged().
[signal] void QHeaderView::sectionDoubleClicked(int logicalIndex)
Этот сигнал испускается, когда раздел дважды нажат. Логический индекс раздела указан параметром logicalIndex.
См. также setSectionsClickable().
[signal] void QHeaderView::sectionEntered(int logicalIndex)
Этот сигнал испускается, когда курсор перемещается над разделом, и нажата левая кнопка мыши. Логический индекс раздела указан параметром logicalIndex.
См. также setSectionsClickable() и sectionPressed().
[signal] void QHeaderView::sectionHandleDoubleClicked(int logicalIndex)
Этот сигнал испускается, когда раздел дважды нажат. Логический индекс раздела указан параметром logicalIndex.
См. также setSectionsClickable().
[signal] void QHeaderView::sectionMoved(int logicalIndex, int oldVisualIndex, int newVisualIndex)
Этот сигнал испускается, когда раздел перемещен. Логический индекс раздела указан параметром logicalIndex, старый индекс — oldVisualIndex, а новый индекс позиции — newVisualIndex.
См. также moveSection().
[signal] void QHeaderView::sectionPressed(int logicalIndex)
Этот сигнал испускается, когда раздел нажат. Логический индекс раздела указан параметром logicalIndex.
См. также setSectionsClickable().
[signal] void QHeaderView::sectionResized(int logicalIndex, int oldSize, int newSize)
Этот сигнал испускается, когда раздел изменён в размерах. Логический номер раздела задан logicalIndex, старый размер — oldSize, а новый размер — newSize.
См. также resizeSection().
[protected slot] void QHeaderView::sectionsAboutToBeRemoved(const QModelIndex &parent, int logicalFirst, int logicalLast)
Этот слот вызывается, когда разделы удаляются из parent. logicalFirst и logicalLast указывают, где разделы были удалены.
Если удаляется только один раздел, logicalFirst и logicalLast будут одинаковыми.
[protected slot] void QHeaderView::sectionsInserted(const QModelIndex &parent, int logicalFirst, int logicalLast)
Этот слот вызывается, когда разделы вставляются в parent. Индексы logicalFirst и logicalLast указывают, куда были вставлены новые разделы.
Если вставляется только один раздел, logicalFirst и logicalLast будут одинаковыми.
[slot] void QHeaderView::setOffset(int offset)
Устанавливает смещение заголовка в offset.
См. также offset() и length().
[slot] void QHeaderView::setOffsetToLastSection()
Устанавливает смещение, чтобы последний раздел был виден.
См. также setOffset(), sectionPosition() и setOffsetToSectionPosition().
[slot] void QHeaderView::setOffsetToSectionPosition(int visualSectionNumber)
Устанавливает смещение до начала раздела по заданному visualSectionNumber. visualSectionNumber — это фактический видимый раздел, когда скрытые разделы не учитываются. Это не всегда то же самое, что visualIndex().
См. также setOffset() и sectionPosition().
[signal] void QHeaderView::sortIndicatorChanged(int logicalIndex, Qt::SortOrder order)
Этот сигнал испускается, когда раздел, содержащий индикатор сортировки, или порядок, указанный в нём, меняется. Логический индекс раздела задаётся logicalIndex, а порядок сортировки — order.
См. также setSortIndicator().
[virtual] QHeaderView::~QHeaderView()
Удаляет заголовок.
int QHeaderView::count() const
Возвращает количество разделов в заголовке.
См. также sectionCountChanged() и length().
[override virtual protected] void QHeaderView::currentChanged(const QModelIndex ¤t, const QModelIndex &old)
Переопределяет: QAbstractItemView::currentChanged(const QModelIndex ¤t, const QModelIndex &previous).
[override virtual protected] bool QHeaderView::event(QEvent *e)
Переопределяет: QAbstractItemView::event(QEvent *event).
int QHeaderView::hiddenSectionCount() const
Возвращает количество разделов в заголовке, которые были скрыты.
См. также setSectionHidden() и isSectionHidden().
void QHeaderView::hideSection(int logicalIndex)
Скрывает раздел, указанный logicalIndex.
См. также showSection(), isSectionHidden(), hiddenSectionCount() и setSectionHidden().
[override virtual protected] int QHeaderView::horizontalOffset() const
Переопределяет: QAbstractItemView::horizontalOffset() const.
Возвращает горизонтальное смещение заголовка. Для вертикальных заголовков это 0.
См. также offset().
[virtual protected] void QHeaderView::initStyleOption(QStyleOptionHeader *option) const
Инициализирует option значениями из этого QHeaderView. Этот метод полезен для подклассов, когда им нужен QStyleOptionHeader, но они не хотят сами заполнять всю информацию.
См. также QStyleOption::initFrom() и initStyleOptionForIndex().
[virtual protected, since 6.0] void QHeaderView::initStyleOptionForIndex(QStyleOptionHeader *option, int logicalIndex) const
Инициализирует стиль option из указанного logicalIndex. Эта функция вызывается по умолчанию в реализации paintSection после того, как была вызвана initStyleOption.
Эта функция была добавлена в Qt 6.0.
См. также paintSection() и initStyleOption().
bool QHeaderView::isSectionHidden(int logicalIndex) const
Возвращает true если секция, заданная logicalIndex, явно скрыта от пользователя; в противном случае возвращает false.
См. также hideSection(), showSection(), setSectionHidden() и hiddenSectionCount().
int QHeaderView::length() const
Возвращает длину по направлению заголовка.
См. также sizeHint(), setSectionResizeMode() и offset().
int QHeaderView::logicalIndex(int visualIndex) const
Возвращает logicalIndex для секции в заданной позиции visualIndex, или -1, если visualIndex < 0 или visualIndex >= QHeaderView::count().
Обратите внимание, что visualIndex не зависит от скрытых секций.
См. также visualIndex() и sectionPosition().
int QHeaderView::logicalIndexAt(int position) const
Возвращает секцию, которая покрывает заданную position в области просмотра.
См. также visualIndexAt() и isSectionHidden().
int QHeaderView::logicalIndexAt(int x, int y) const
Возвращает логический индекс секции в заданных координатах. Если заголовок горизонтальный, используется x, в противном случае для поиска логического индекса используется y.
int QHeaderView::logicalIndexAt(const QPoint &pos) const
Возвращает логический индекс секции в заданной позиции pos. Если заголовок горизонтальный, используется координата x, в противном случае используется координата y для поиска логического индекса.
См. также sectionPosition().
[override virtual protected] void QHeaderView::mouseDoubleClickEvent(QMouseEvent *e)
Переопределяет: QAbstractItemView::mouseDoubleClickEvent(QMouseEvent *event).
[override virtual protected] void QHeaderView::mouseMoveEvent(QMouseEvent *e)
Переопределяет: QAbstractItemView::mouseMoveEvent(QMouseEvent *event).
[override virtual protected] void QHeaderView::mousePressEvent(QMouseEvent *e)
Переопределяет: QAbstractItemView::mousePressEvent(QMouseEvent *event).
[override virtual protected] void QHeaderView::mouseReleaseEvent(QMouseEvent *e)
Переопределяет: QAbstractItemView::mouseReleaseEvent(QMouseEvent *event).
void QHeaderView::moveSection(int from, int to)
Перемещает секцию с визуальным индексом from в секцию с визуальным индексом to.
См. также sectionsMoved().
int QHeaderView::offset() const
Возвращает смещение заголовка: это самая левая (или верхняя для вертикальных заголовков) видимая пиксель заголовка.
См. также setOffset().
Qt::Orientation QHeaderView::orientation() const
Возвращает направление заголовка.
См. также Qt::Orientation.
[override virtual protected] void QHeaderView::paintEvent(QPaintEvent *e)
Переопределяет: QAbstractScrollArea::paintEvent(QPaintEvent *event).
[virtual protected] void QHeaderView::paintSection(QPainter *painter, const QRect &rect, int logicalIndex) const
Рисует секцию, указанную заданным logicalIndex, используя заданный painter и rect.
Обычно вам не нужно вызывать эту функцию.
[override virtual] void QHeaderView::reset()
Переопределяет: QAbstractItemView::reset().
[since 5.2] int QHeaderView::resizeContentsPrecision() const
Возвращает точность, с которой QHeaderView будет рассчитывать ResizeToContents.
Эта функция была добавлена в Qt 5.2.
См. также setResizeContentsPrecision() и setSectionResizeMode().
void QHeaderView::resizeSection(int logicalIndex, int size)
Изменяет размер секции, указанной logicalIndex, на size пикселей. Параметр size должен быть значением больше или равным нулю. Однако размер, равный нулю, не рекомендуется. В этой ситуации следует использовать hideSection.
См. также sectionResized(), sectionSize() и hideSection().
void QHeaderView::resizeSections(QHeaderView::ResizeMode mode)
Изменяет размер секций в соответствии с заданным mode, игнорируя текущий режим изменения размера.
См. также sectionResized().
bool QHeaderView::restoreState(const QByteArray &state)
Восстанавливает state этого виджета заголовка. Эта функция возвращает true если состояние было восстановлено; в противном случае возвращает false.
См. также saveState().
QByteArray QHeaderView::saveState() const
Сохраняет текущее состояние этого виджета заголовка.
Для восстановления сохранённого состояния передайте возвращаемое значение в restoreState().
См. также restoreState().
int QHeaderView::sectionPosition(int logicalIndex) const
Возвращает позицию секции заданного logicalIndex, или -1, если секция скрыта. Позиция измеряется в пикселях от левого верхнего угла первой видимой позиции к левому верхнему углу позиции с logicalIndex. Измерение выполняется по оси x для горизонтальных заголовков и по оси y для вертикальных заголовков.
См. также sectionViewportPosition().
[since 5.0] QHeaderView::ResizeMode QHeaderView::sectionResizeMode(int logicalIndex) const
Возвращает режим изменения размера, применяемый к секции, заданной указанным logicalIndex.
Эта функция была добавлена в Qt 5.0.
См. также setSectionResizeMode().
int QHeaderView::sectionSize(int logicalIndex) const
Возвращает ширину (или высоту для вертикальных заголовков) заданного logicalIndex.
См. также length(), setSectionResizeMode() и defaultSectionSize().
[virtual protected] QSize QHeaderView::sectionSizeFromContents(int logicalIndex) const
Возвращает размер содержимого секции, заданной указанным logicalIndex.
См. также defaultSectionSize().
int QHeaderView::sectionSizeHint(int logicalIndex) const
Возвращает подходящий размер подсказки для секции, указанной logicalIndex.
См. также sizeHint(), defaultSectionSize(), minimumSectionSize() и maximumSectionSize().
int QHeaderView::sectionViewportPosition(int logicalIndex) const
Возвращает положение видимой области секции с заданным logicalIndex.
Если секция скрыта, значение возврата не определено.
См. также sectionPosition() и isSectionHidden().
[since 5.0] bool QHeaderView::sectionsClickable() const
Возвращает true , если заголовок нажимаем; в противном случае возвращает false. Нажимаемый заголовок может позволять пользователю изменять представление данных в представлении, связанном с заголовком.
Эта функция была добавлена в Qt 5.0.
См. также setSectionsClickable().
bool QHeaderView::sectionsHidden() const
Возвращает true , если секции в заголовке скрыты; в противном случае возвращает false.
См. также setSectionHidden().
[since 5.0] bool QHeaderView::sectionsMovable() const
Возвращает true , если заголовок может быть перемещён пользователем; в противном случае возвращает false.
По умолчанию, секции могут перемещаться в QTreeView (кроме первой), и не могут перемещаться в QTableView.
Эта функция была добавлена в Qt 5.0.
См. также setSectionsMovable().
bool QHeaderView::sectionsMoved() const
Возвращает true , если секции в заголовке были перемещены; в противном случае возвращает false.
См. также moveSection().
[override virtual] void QHeaderView::setModel(QAbstractItemModel *model)
Переопределяет: QAbstractItemView::setModel(QAbstractItemModel *model).
[since 5.2] void QHeaderView::setResizeContentsPrecision(int precision)
Устанавливает точность, с которой QHeaderView должен рассчитывать размер при использовании ResizeToContents. Низкое значение обеспечит менее точный, но быстрый автоматический размер, а высокое значение обеспечит более точный размер, но может быть медленным.
Число precision указывает, сколько секций нужно учитывать при расчете предпочтительного размера.
Значение по умолчанию равно 1000, что означает, что горизонтальная колонка с автоматическим изменением размера будет рассматривать максимум 1000 строк при расчете при автоматическом изменении размера.
Специальное значение 0 означает, что будет рассматриваться только видимая область. Специальное значение -1 означает рассмотрение всех элементов.
Это значение используется в QTableView::sizeHintForColumn(), QTableView::sizeHintForRow() и QTreeView::sizeHintForColumn(). Переопределение этих функций может сделать эту функцию неэффективной.
Эта функция была добавлена в Qt 5.2.
См. также resizeContentsPrecision(), setSectionResizeMode(), resizeSections(), QTableView::sizeHintForColumn(), QTableView::sizeHintForRow() и QTreeView::sizeHintForColumn().
void QHeaderView::setSectionHidden(int logicalIndex, bool hide)
Если hide равно true, секция, заданная logicalIndex, скрывается; в противном случае секция отображается.
См. также isSectionHidden() и hiddenSectionCount().
[since 5.0] void QHeaderView::setSectionResizeMode(QHeaderView::ResizeMode mode)
Устанавливает ограничения на то, как заголовок может быть изменен в размерах, описанные заданным mode.
Эта функция была добавлена в Qt 5.0.
См. также sectionResizeMode(), length() и sectionResized().
[since 5.0] void QHeaderView::setSectionResizeMode(int logicalIndex, QHeaderView::ResizeMode mode)
Устанавливает ограничения на то, как секция, заданная logicalIndex в заголовке, может быть изменен в размерах, описанные заданным mode. Логический индекс должен существовать во время вызова этой функции.
Примечание: Это значение будет проигнорировано для последней секции, если свойство stretchLastSection установлено в true. Это значение по умолчанию для горизонтальных заголовков, предоставляемых QTreeView.
Эта функция была добавлена в Qt 5.0.
См. также setStretchLastSection() и resizeContentsPrecision().
[since 5.0] void QHeaderView::setSectionsClickable(bool clickable)
Если clickable равно true, заголовок будет реагировать на одиночные щелчки.
Эта функция была добавлена в Qt 5.0.
См. также sectionsClickable(), sectionClicked(), sectionPressed() и setSortIndicatorShown().
[since 5.0] void QHeaderView::setSectionsMovable(bool movable)
Если movable равно true, секции заголовка могут быть перемещены пользователем; в противном случае они зафиксированы на месте.
При использовании с QTreeView первая колонка по умолчанию не может перемещаться (поскольку она содержит структуру дерева). Вы можете сделать её перемещаемой с помощью setFirstSectionMovable(true).
Эта функция была добавлена в Qt 5.0.
См. также sectionsMovable(), sectionMoved() и setFirstSectionMovable().
[override virtual protected] void QHeaderView::setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags flags)
Переопределяет: QAbstractItemView::setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags flags).
Выделяет элементы в заданном rect в соответствии с указанными flags.
Реализация базового класса ничего не делает.
void QHeaderView::setSortIndicator(int logicalIndex, Qt::SortOrder order)
Устанавливает индикатор сортировки для секции, заданной указанным logicalIndex, в направлении, указанном order, и удаляет индикатор сортировки из любой другой секции, которая его показывала.
logicalIndex может быть -1, в этом случае индикатор сортировки не будет отображаться, а модель вернётся к своему естественному, несортированному порядку. Обратите внимание, что не все модели поддерживают это и могут даже аварийно завершиться в этом случае.
См. также sortIndicatorSection() и sortIndicatorOrder().
[override virtual] void QHeaderView::setVisible(bool v)
Переопределяет функцию доступа к свойству: QWidget::visible.
void QHeaderView::showSection(int logicalIndex)
Отображает секцию, заданную logicalIndex.
См. также hideSection(), isSectionHidden(), hiddenSectionCount() и setSectionHidden().
[override virtual] QSize QHeaderView::sizeHint() const
Переопределяет: QAbstractScrollArea::sizeHint() const.
Возвращает подходящий размер для этого заголовка.
См. также sectionSizeHint().
Qt::SortOrder QHeaderView::sortIndicatorOrder() const
Возвращает порядок индикатора сортировки. Если ни одна секция не имеет индикатора сортировки, возвращаемое значение этой функции не определено.
См. также setSortIndicator() и sortIndicatorSection().
int QHeaderView::sortIndicatorSection() const
Возвращает логический индекс секции, которая имеет индикатор сортировки. По умолчанию это секция 0.
См. также setSortIndicator(), sortIndicatorOrder() и setSortIndicatorShown().
END_OF_DOCUMENT_MARKERint QHeaderView::stretchSectionCount() const
Возвращает количество секций, установленных в режим растяжения. В представлениях это можно использовать для проверки, нужно ли заголовку представления изменить размер секций при изменении геометрии представления.
См. также stretchLastSection.
void QHeaderView::swapSections(int first, int second)
Меняет местами секцию с визуальным индексом first и секцию с визуальным индексом second.
См. также moveSection().
[override virtual protected] int QHeaderView::verticalOffset() const
Реализует: QAbstractItemView::verticalOffset() const.
Возвращает вертикальное смещение заголовка. Для горизонтальных заголовков это 0.
См. также offset().
[override virtual protected] bool QHeaderView::viewportEvent(QEvent *e)
Реализует: QAbstractItemView::viewportEvent(QEvent *event).
int QHeaderView::visualIndex(int logicalIndex) const
Возвращает позицию визуального индекса секции, заданной данным logicalIndex, или -1 в противном случае.
Скрытые секции по-прежнему имеют действительные визуальные индексы.
См. также logicalIndex().
int QHeaderView::visualIndexAt(int position) const
Возвращает визуальный индекс секции, которая охватывает данную position в области просмотра.
См. также logicalIndexAt().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qheaderview.html