Класс QTreeView
Класс QTreeView предоставляет реализацию представления дерева по умолчанию на основе модели/представления. Подробнее...
| Заголовок: | #include <QTreeView> |
| CMake: | find_package(Qt6 COMPONENTS Widgets REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| Наследует: | QAbstractItemView |
| Наследуется от: |
Свойства
|
|
Публичные функции
| QTreeView(QWidget *parent = nullptr) | |
| virtual | ~QTreeView() |
| bool | отображениеФокусаВоВсехСтолбцах() const |
| int | задержкаАвторасширения() const |
| int | столбецПоКоординатам(int x) const |
| int | позицияПросмотраСтолбца(int column) const |
| int | ширинаСтолбца(int column) const |
| bool | расширениеПриДвойномЩелчке() const |
| QHeaderView * | заголовок() const |
| int | отступ() const |
| QModelIndex | индексНад(const QModelIndex &index) const |
| QModelIndex | индексПод(const QModelIndex &index) const |
| bool | анимирован() const |
| bool | столбецСкрыт(int column) const |
| bool | расширен(const QModelIndex &index) const |
| bool | первыйСтолбецРасширен(int row, const QModelIndex &parent) const |
| bool | заголовокСкрыт() const |
| bool | строкаСкрыта(int row, const QModelIndex &parent) const |
| bool | сортировкаВключена() const |
| bool | элементыРасширяемы() const |
| void | сброситьОтступ() |
| bool | кореньДекорирован() const |
| void | установитьОтображениеФокусаВоВсехСтолбцах(bool enable) |
| void | установитьАнимацию(bool enable) |
| void | установитьЗадержкуАвторасширения(int delay) |
| void | скрытьСтолбец(int column, bool hide) |
| void | установитьШиринуСтолбца(int column, int width) |
| void | расширить(const QModelIndex &index, bool expanded) |
| void | установитьРасширениеПриДвойномЩелчке(bool enable) |
| void | установитьРасширениеПервогоСтолбца(int row, const QModelIndex &parent, bool span) |
| void | установитьЗаголовок(QHeaderView *header) |
| void | скрытьЗаголовок(bool hide) |
| void | установитьОтступ(int i) |
| void | установитьРасширениеЭлементов(bool enable) |
| void | установитьДекорациюКорня(bool show) |
| void | скрытьСтроку(int row, const QModelIndex &parent, bool hide) |
| void | включитьСортировку(bool enable) |
| void | установитьПоложениеДерева(int index) |
| void | установитьОдинаковуюВысотуСтрок(bool uniform) |
| void | установитьПереносСлова(bool on) |
| int | позицияДерева() const |
| bool | одинаковаяВысотаСтрок() const |
| bool | переносСлова() const |
Реализованные публичные функции
| виртуальный void | dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QList<int> &roles = QList<int>()) override |
| виртуальный QModelIndex | indexAt(const QPoint &point) const override |
| виртуальный void | keyboardSearch(const QString &search) override |
| виртуальный void | reset() override |
| виртуальный void | scrollTo(const QModelIndex &index, QAbstractItemView::ScrollHint hint = EnsureVisible) override |
| виртуальный void | selectAll() override |
| виртуальный void | setModel(QAbstractItemModel *model) override |
| виртуальный void | setRootIndex(const QModelIndex &index) override |
| виртуальный void | setSelectionModel(QItemSelectionModel *selectionModel) override |
| виртуальный QRect | visualRect(const QModelIndex &index) const override |
Открытые слоты
| 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) |
Сигналы
| void | collapsed(const QModelIndex &index) |
| void | expanded(const QModelIndex &index) |
Защищенные функции
| виртуальный void | drawBranches(QPainter *painter, const QRect &rect, const QModelIndex &index) const |
| виртуальный 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 |
Переопределённые защищённые функции
| виртуальный void | changeEvent(QEvent *event) override |
| виртуальный void | currentChanged(const QModelIndex ¤t, const QModelIndex &previous) override |
| виртуальный void | dragMoveEvent(QDragMoveEvent *event) override |
| виртуальный int | horizontalOffset() const override |
| виртуальный bool | isIndexHidden(const QModelIndex &index) const override |
| виртуальный void | keyPressEvent(QKeyEvent *event) override |
| виртуальный void | mouseDoubleClickEvent(QMouseEvent *event) override |
| виртуальный void | mouseMoveEvent(QMouseEvent *event) override |
| виртуальный void | mousePressEvent(QMouseEvent *event) override |
| виртуальный void | mouseReleaseEvent(QMouseEvent *event) override |
| виртуальный QModelIndex | moveCursor(QAbstractItemView::CursorAction cursorAction, Qt::KeyboardModifiers modifiers) override |
| виртуальный void | paintEvent(QPaintEvent *event) override |
| виртуальный void | rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end) override |
| виртуальный void | rowsInserted(const QModelIndex &parent, int start, int end) override |
| виртуальный void | scrollContentsBy(int dx, int dy) override |
| виртуальный QModelIndexList | selectedIndexes() const override |
| виртуальный void | selectionChanged(const QItemSelection &selected, const QItemSelection &deselected) override |
| виртуальный void | setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags command) override |
| виртуальный int | sizeHintForColumn(int column) const override |
| виртуальный void | timerEvent(QTimerEvent *event) override |
| виртуальный void | updateGeometries() override |
| виртуальный int | verticalOffset() const override |
| виртуальный bool | viewportEvent(QEvent *event) override |
| виртуальный QSize | viewportSizeHint() const override |
| виртуальный QRegion | visualRegionForSelection(const QItemSelection &selection) const override |
Защищенные слоты
| 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) |
Подробное описание
Класс QTreeView реализует древовидное представление элементов из модели. Этот класс используется для предоставления стандартных иерархических списков, которые ранее предоставлялись классом QListView, но с использованием более гибкого подхода, предоставляемого архитектурой моделей/представлений Qt.
Класс QTreeView является одним из классов модели/представления и входит в состав фреймворка модели/представления Qt.
Класс QTreeView реализует интерфейсы, определенные классом QAbstractItemView, чтобы позволить ему отображать данные, предоставляемые моделями, производными от класса QAbstractItemModel.
Просто создать виджет дерева, отображающий данные из модели. В следующем примере содержимое каталога предоставляется моделью QFileSystemModel и отображается в виде дерева:
QFileSystemModel *model = new QFileSystemModel;
model->setRootPath(QDir::currentPath());
QTreeView *tree = new QTreeView(splitter);
tree->setModel(model); Архитектура модели/представления гарантирует, что содержимое виджета дерева обновляется по мере изменения модели.
Элементы, имеющие дочерние элементы, могут находиться в развёрнутом (дочерние элементы видны) или свёрнутом (дочерние элементы скрыты) состоянии. При изменении этого состояния посылается сигнал collapsed() или expanded() с индексом модели соответствующего элемента.
Количество отступов, используемых для обозначения уровней иерархии, контролируется свойством indentation.
Заголовки в виджетах дерева создаются с помощью класса QHeaderView и могут быть скрыты с помощью header()->hide(). Обратите внимание, что каждый заголовок настроен так, что его свойство stretchLastSection установлено в значение true, что гарантирует, что виджет не потратит ни одной части пространства, выделенного для его заголовка. Если это значение установлено в true, это свойство переопределит режим изменения размера, установленный для последней секции в заголовке.
По умолчанию все столбцы в виджете дерева перемещаемы, за исключением первого. Чтобы отключить перемещение этих столбцов, используйте функцию QHeaderView's setSectionsMovable(). Более подробную информацию о переупорядочивании секций см. в разделе Перемещение секций заголовка.
Нажатия клавиш
QTreeView поддерживает набор нажатий клавиш, которые позволяют пользователю перемещаться по представлению и взаимодействовать с содержимым элементов:
| Клавиша | Действие |
|---|---|
| Вверх | Перемещает курсор к элементу в том же столбце на предыдущей строке. Если у родительского элемента текущего элемента нет строк для навигации, курсор перемещается к соответствующему элементу в последней строке предшествующего родительского элемента. |
| Вниз | Перемещает курсор к элементу в том же столбце на следующей строке. Если у родительского элемента текущего элемента нет строк для навигации, курсор перемещается к соответствующему элементу в первой строке последующего родительского элемента. |
| Влево | Скрывает дочерние элементы текущего элемента (если они есть), сворачивая ветвь. |
| Минус | То же, что и Влево. |
| Вправо | Отображает дочерние элементы текущего элемента (если они есть), разворачивая ветвь. |
| Плюс | То же, что и Вправо. |
| Звездочка | Развертывает текущий элемент и все его дочерние элементы (если они есть). |
| PageUp | Перемещает курсор вверх на одну страницу. |
| PageDown | Перемещает курсор вниз на одну страницу. |
| Home | Перемещает курсор к элементу в том же столбце первой строки первого верхнего уровня элемента в модели. |
| End | Перемещает курсор к элементу в том же столбце последней строки последнего элемента верхнего уровня в модели. |
| F2 | В редактируемых моделях открывает текущий элемент для редактирования. Клавиша Escape может использоваться для отмены процесса редактирования и отката любых изменений в отображаемых данных. |
Улучшение производительности
Можно дать представлению подсказки о данных, с которыми оно работает, чтобы улучшить его производительность при отображении большого количества элементов. Один подход, который можно использовать для представлений, предназначенных для отображения элементов с одинаковой высотой, заключается в установке свойства uniformRowHeights в значение true.
См. также QListView, QTreeWidget, Классы представлений, QAbstractItemModel, QAbstractItemView и Пример Dir View.
Документация свойств
allColumnsShowFocus : bool
Это свойство определяет, должны ли элементы отображать фокус клавиатуры, используя все столбцы
Если это свойство true, все столбцы будут отображать фокус, в противном случае фокус будет отображаться только в одном столбце.
По умолчанию значение ложно.
Функции доступа:
| bool | allColumnsShowFocus() const |
| void | setAllColumnsShowFocus(bool enable) |
animated : bool
Это свойство определяет, включены ли анимации
Если это свойство true, виджет дерева будет анимировать раскрытие и сворачивание ветвей. Если это свойство false, виджет дерева будет раскрывать или сворачивать ветви мгновенно, не отображая анимацию.
По умолчанию это свойство false.
Функции доступа:
| bool | isAnimated() const |
| void | setAnimated(bool enable) |
autoExpandDelay : int
Это свойство определяет время задержки перед открытием элементов дерева во время операции перетаскивания.
Это свойство определяет количество времени в миллисекундах, которое пользователь должен подождать над узлом, прежде чем этот узел будет автоматически открыт или закрыт. Если время установлено меньше 0, то функция не будет активирована.
По умолчанию значение этого свойства равно -1, что означает отключение авторасширения.
Функции доступа:
| int | autoExpandDelay() const |
| void | setAutoExpandDelay(int delay) |
expandsOnDoubleClick : bool
Это свойство определяет, можно ли расширить элементы двойным щелчком мыши.
Это свойство определяет, может ли пользователь раскрывать и сворачивать элементы двойным щелчком. Значение по умолчанию — true.
Функции доступа:
| bool | expandsOnDoubleClick() const |
| void | setExpandsOnDoubleClick(bool enable) |
См. также itemsExpandable.
headerHidden : bool
Это свойство определяет, отображается ли заголовок.
Если это свойство true, заголовок не отображается, в противном случае он отображается. Значение по умолчанию — false.
Функции доступа:
| bool | isHeaderHidden() const |
| void | setHeaderHidden(bool hide) |
См. также header().
indentation : int
Отступ элементов в представлении дерева.
Это свойство хранит отступ элементов в пикселях для каждого уровня в представлении дерева. Для элементов верхнего уровня отступ задаёт горизонтальное расстояние от края области просмотра до элементов в первом столбце; для дочерних элементов он задаёт их отступ от родительских элементов.
По умолчанию значение этого свойства зависит от стиля. Таким образом, при изменении стиля это свойство обновляется из него. Вызов setIndentation() останавливает обновления, вызов resetIndentation() восстановит поведение по умолчанию.
Функции доступа:
| int | indentation() const |
| void | setIndentation(int i) |
| void | resetIndentation() |
itemsExpandable : bool
Это свойство определяет, могут ли элементы быть расширены пользователем.
Это свойство определяет, может ли пользователь взаимодействовать с раскрытием и сворачиванием элементов.
По умолчанию это свойство true.
Функции доступа:
| bool | itemsExpandable() const |
| void | setItemsExpandable(bool enable) |
rootIsDecorated : bool
Это свойство определяет, нужно ли отображать элементы управления для раскрытия и сворачивания элементов верхнего уровня
Элементы с дочерними элементами обычно отображаются с элементами управления для раскрытия и сворачивания, позволяя отображать или скрывать их дочерние элементы. Если это свойство ложно, эти элементы управления не отображаются для элементов верхнего уровня. Это можно использовать для того, чтобы структура дерева с одним уровнем выглядела как простой список элементов.
По умолчанию это свойство true.
Функции доступа:
| bool | rootIsDecorated() const |
| void | setRootIsDecorated(bool show) |
sortingEnabled : bool
Это свойство определяет, включена ли сортировка
Если это свойство true, сортировка включена для дерева; если свойство ложно, сортировка не включена. Значение по умолчанию — false.
Примечание: Для повышения производительности рекомендуется включать сортировку после вставки элементов в дерево. В качестве альтернативы можно также вставить элементы в список перед вставкой элементов в дерево.
Функции доступа:
| bool | isSortingEnabled() const |
| void | setSortingEnabled(bool enable) |
См. также sortByColumn().
uniformRowHeights : bool
Это свойство определяет, имеют ли все элементы в дереве одинаковую высоту
Это свойство следует устанавливать в значение true только в том случае, если гарантируется, что все элементы в представлении имеют одинаковую высоту. Это позволяет представлению выполнять некоторые оптимизации.
Высота берется из первого элемента в представлении. Она обновляется при изменении данных этого элемента.
Примечание: Если размер подсказки редактора больше размера подсказки ячейки, тогда используется размер подсказки редактора.
По умолчанию это свойство false.
Функции доступа:
| bool | uniformRowHeights() const |
| void | setUniformRowHeights(bool uniform) |
wordWrap : bool
Это свойство задаёт политику перевода текста элементов на новую строку
Если это свойство true, текст элемента переносится на новую строку при необходимости по словам; в противном случае он вообще не переносится. По умолчанию это свойство false.
Обратите внимание, что даже если перенос по словам включен, ячейка не будет расширена для размещения всего текста. Эллипсис будет вставлен в соответствии с текущим textElideMode.
Функции доступа:
| bool | wordWrap() const |
| void | setWordWrap(bool on) |
Документация функций-членов
QTreeView::QTreeView(QWidget *parent = nullptr)
Конструирует представление дерева с родительским элементом для представления данных модели. Используйте setModel(), чтобы установить модель.
См. также QAbstractItemModel.
[slot] void QTreeView::collapse(const QModelIndex &index)
Сворачивает элемент модели, указанный индексом index.
См. также collapsed().
[slot] void QTreeView::collapseAll()
Сворачивает все раскрытые элементы.
См. также expandAll(), expand(), collapse() и setExpanded().
[signal] void QTreeView::collapsed(const QModelIndex &index)
Этот сигнал испускается, когда элемент, указанный параметром index, сворачивается.
[protected slot] void QTreeView::columnCountChanged(int oldCount, int newCount)
Сообщает вид дерева, что количество столбцов в представлении дерева изменилось с oldCount на newCount.
[protected slot] void QTreeView::columnMoved()
Этот слот вызывается всякий раз, когда столбец перемещен.
[protected slot] void QTreeView::columnResized(int column, int oldSize, int newSize)
Эта функция вызывается всякий раз, когда изменяется размер столбца column в заголовке. oldSize и newSize содержат предыдущий размер и новый размер в пикселях соответственно.
См. также setColumnWidth().
[slot] void QTreeView::expand(const QModelIndex &index)
Развертывает элемент модели, указанный параметром index.
См. также expanded().
[slot] void QTreeView::expandAll()
Развертывает все элементы, которые можно развернуть.
Предупреждение: если модель содержит большое количество элементов, выполнение этой функции займет некоторое время.
См. также collapseAll(), expand(), collapse() и setExpanded().
[slot, since 5.13] void QTreeView::expandRecursively(const QModelIndex &index, int depth = -1)
Развертывает элемент по заданному index и всех его потомков до заданной глубины. Глубина относительна к заданному index. Значение depth, равное -1, развернёт всех потомков; значение 0 развернёт только указанный index.
Предупреждение: если модель содержит большое количество элементов, выполнение этой функции займет некоторое время.
Функция была добавлена в Qt 5.13.
См. также expandAll().
[slot] void QTreeView::expandToDepth(int depth)
Развертывает все элементы, которые можно развернуть, до заданной глубины.
См. также expandAll(), collapseAll(), expand(), collapse() и setExpanded().
[signal] void QTreeView::expanded(const QModelIndex &index)
Этот сигнал испускается, когда элемент, указанный параметром index, развернут.
См. также setExpanded().
[slot] void QTreeView::hideColumn(int column)
Скрывает указанный столбец column.
Примечание: эту функцию следует вызывать только после инициализации модели, так как представлению необходимо знать количество столбцов, чтобы скрыть column.
См. также showColumn() и setColumnHidden().
[slot] void QTreeView::resizeColumnToContents(int column)
Изменяет размер столбца column до размера его содержимого.
См. также columnWidth(), setColumnWidth(), sizeHintForColumn() и QHeaderView::resizeContentsPrecision().
[protected slot] void QTreeView::rowsRemoved(const QModelIndex &parent, int start, int end)
Сообщает представлению, что строки от строки start до строки end включительно были удалены из элемента родительской модели parent.
[slot] void QTreeView::showColumn(int column)
Отображает указанный столбец column в представлении дерева.
См. также hideColumn() и setColumnHidden().
[slot] void QTreeView::sortByColumn(int column, Qt::SortOrder order)
Сортирует модель по значениям в заданном столбце и в порядке order.
column может быть -1, в этом случае индикатор сортировки не будет показан, и модель вернётся к своему естественному, несортированному порядку. Обратите внимание, что не все модели поддерживают это и могут даже аварийно завершить работу в этом случае.
См. также sortingEnabled.
[virtual] QTreeView::~QTreeView()
Удаляет представление дерева.
[override virtual protected] void QTreeView::changeEvent(QEvent *event)
Переопределяет: QFrame::changeEvent(QEvent *ev).
int QTreeView::columnAt(int x) const
Возвращает столбец в представлении дерева, заголовок которого покрывает заданную координату x.
int QTreeView::columnViewportPosition(int column) const
Возвращает горизонтальную позицию столбца column в области просмотра.
int QTreeView::columnWidth(int column) const
Возвращает ширину столбца column.
См. также resizeColumnToContents() и setColumnWidth().
[override virtual protected] void QTreeView::currentChanged(const QModelIndex ¤t, const QModelIndex &previous)
Переопределяет: 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>())
Переопределяет: QAbstractItemView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QList<int> &roles).
[override virtual protected] void QTreeView::dragMoveEvent(QDragMoveEvent *event)
Переопределяет: QAbstractItemView::dragMoveEvent(QDragMoveEvent *event).
[virtual protected] void QTreeView::drawBranches(QPainter *painter, const QRect &rect, const QModelIndex &index) const
Рисует ветви в представлении дерева в той же строке, что и элемент модели index, используя указанный painter. Ветви рисуются в прямоугольнике, заданном параметром rect.
[virtual protected] void QTreeView::drawRow(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
Рисует строку в представлении дерева, содержащую элемент модели index, используя указанный painter. Параметр option управляет тем, как отображается элемент.
См. также setAlternatingRowColors().
[protected] void QTreeView::drawTree(QPainter *painter, const QRegion ®ion) const
Рисует часть дерева, пересекающую заданную область region, используя указанный painter.
См. также paintEvent().
QHeaderView *QTreeView::header() const
Возвращает заголовок для представления дерева.
См. также setHeader() и QAbstractItemModel::headerData().
[override virtual protected] int QTreeView::horizontalOffset() const
Переопределяет: QAbstractItemView::horizontalOffset() const.
Возвращает горизонтальное смещение элементов в представлении дерева.
Обратите внимание, что представление дерева использует позиции горизонтального заголовка для определения позиций столбцов в представлении.
См. также verticalOffset().
END_OF_DOCUMENT_MARKERQModelIndex QTreeView::indexAbove(const QModelIndex &index) const
Возвращает индекс модели элемента, расположенного над index.
[override virtual] QModelIndex QTreeView::indexAt(const QPoint &point) const
Переопределяет: QAbstractItemView::indexAt(const QPoint &point) const.
QModelIndex QTreeView::indexBelow(const QModelIndex &index) const
Возвращает индекс модели элемента, расположенного под index.
[protected] int QTreeView::indexRowSizeHint(const QModelIndex &index) const
Возвращает размер подсказки для строки, указанной index.
См. также sizeHintForColumn() и uniformRowHeights().
bool QTreeView::isColumnHidden(int column) const
Возвращает true если column скрыт; в противном случае возвращает false.
См. также hideColumn() и isRowHidden().
bool QTreeView::isExpanded(const QModelIndex &index) const
Возвращает true если элемент модели index развернут; в противном случае возвращает false.
См. также expand(), expanded() и setExpanded().
bool QTreeView::isFirstColumnSpanned(int row, const QModelIndex &parent) const
Возвращает true если элемент в первом столбце в заданной row родителя parent охватывает все столбцы; в противном случае возвращает false.
См. также setFirstColumnSpanned().
[override virtual protected] bool QTreeView::isIndexHidden(const QModelIndex &index) const
Переопределяет: QAbstractItemView::isIndexHidden(const QModelIndex &index) const.
bool QTreeView::isRowHidden(int row, const QModelIndex &parent) const
Возвращает true если элемент в заданной row родителя parent скрыт; в противном случае возвращает false.
См. также setRowHidden() и isColumnHidden().
[override virtual protected] void QTreeView::keyPressEvent(QKeyEvent *event)
Переопределяет: QAbstractItemView::keyPressEvent(QKeyEvent *event).
[override virtual] void QTreeView::keyboardSearch(const QString &search)
Переопределяет: QAbstractItemView::keyboardSearch(const QString &search).
[override virtual protected] void QTreeView::mouseDoubleClickEvent(QMouseEvent *event)
Переопределяет: QAbstractItemView::mouseDoubleClickEvent(QMouseEvent *event).
[override virtual protected] void QTreeView::mouseMoveEvent(QMouseEvent *event)
Переопределяет: QAbstractItemView::mouseMoveEvent(QMouseEvent *event).
[override virtual protected] void QTreeView::mousePressEvent(QMouseEvent *event)
Переопределяет: QAbstractItemView::mousePressEvent(QMouseEvent *event).
[override virtual protected] void QTreeView::mouseReleaseEvent(QMouseEvent *event)
Переопределяет: QAbstractItemView::mouseReleaseEvent(QMouseEvent *event).
[override virtual protected] QModelIndex QTreeView::moveCursor(QAbstractItemView::CursorAction cursorAction, Qt::KeyboardModifiers modifiers)
Переопределяет: QAbstractItemView::moveCursor(QAbstractItemView::CursorAction cursorAction, Qt::KeyboardModifiers modifiers).
Перемещает курсор указанным способом cursorAction, используя информацию о нажатых кнопках modifiers.
[override virtual protected] void QTreeView::paintEvent(QPaintEvent *event)
Переопределяет: QAbstractScrollArea::paintEvent(QPaintEvent *event).
[override virtual] void QTreeView::reset()
Переопределяет: QAbstractItemView::reset().
[protected] int QTreeView::rowHeight(const QModelIndex &index) const
Возвращает высоту строки, указанной данным index.
См. также indexRowSizeHint().
[override virtual protected] void QTreeView::rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end)
Переопределяет: QAbstractItemView::rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end).
Уведомляет виджет, что строки от start до end включительно собираются для удаления из заданного родительского элемента модели parent.
[override virtual protected] void QTreeView::rowsInserted(const QModelIndex &parent, int start, int end)
Переопределяет: QAbstractItemView::rowsInserted(const QModelIndex &parent, int start, int end).
Уведомляет виджет, что строки от start до end включительно были вставлены в родительский элемент модели parent.
[override virtual protected] void QTreeView::scrollContentsBy(int dx, int dy)
Переопределяет: QAbstractScrollArea::scrollContentsBy(int dx, int dy).
Прокручивает содержимое дерева на (dx, dy).
[override virtual] void QTreeView::scrollTo(const QModelIndex &index, QAbstractItemView::ScrollHint hint = EnsureVisible)
Переопределяет: QAbstractItemView::scrollTo(const QModelIndex &index, QAbstractItemView::ScrollHint hint).
Прокручивает содержимое дерева до тех пор, пока указанный элемент модели index не станет видимым. Параметр hint более точно определяет, где должен быть расположен элемент после операции. Если какие-либо родительские элементы элемента модели свёрнуты, они будут развернуты, чтобы убедиться, что элемент модели виден.
[override virtual] void QTreeView::selectAll()
Переопределяет: QAbstractItemView::selectAll().
[override virtual protected] QModelIndexList QTreeView::selectedIndexes() const
Переопределяет: QAbstractItemView::selectedIndexes() const.
[override virtual protected] void QTreeView::selectionChanged(const QItemSelection &selected, const QItemSelection &deselected)
Переопределяет: QAbstractItemView::selectionChanged(const QItemSelection &selected, const QItemSelection &deselected).
void QTreeView::setColumnHidden(int column, bool hide)
Если hide равно true, то column скрывается, в противном случае — отображается.
См. также isColumnHidden(), hideColumn() и setRowHidden().
void QTreeView::setColumnWidth(int column, int width)
Устанавливает ширину заданного столбца на значение width.
См. также columnWidth() и resizeColumnToContents().
void QTreeView::setExpanded(const QModelIndex &index, bool expanded)
Устанавливает элемент, на который указывает index, в состояние свернутости или развернутости в зависимости от значения expanded.
См. также expanded(), expand() и isExpanded().
void QTreeView::setFirstColumnSpanned(int row, const QModelIndex &parent, bool span)
Если span имеет значение true, то элемент в первом столбце в строке row с заданным parent устанавливается для занимания всех столбцов, в противном случае все элементы в строке row отображаются.
См. также isFirstColumnSpanned().
void QTreeView::setHeader(QHeaderView *header)
Устанавливает заголовок для виджета QTreeView, в качестве header.
Виджет берет на себя управление заданным header и удаляет его при установке нового заголовка.
См. также QAbstractItemModel::headerData().
void QTreeView::setModel(QAbstractItemModel *model)
Переопределяет: QAbstractItemView::setModel(QAbstractItemModel *model).
void QTreeView::setRootIndex(const QModelIndex &index)
Переопределяет: QAbstractItemView::setRootIndex(const QModelIndex &index).
void QTreeView::setRowHidden(int row, const QModelIndex &parent, bool hide)
Если hide имеет значение true, то строка row с заданным parent скрывается, в противном случае строка отображается.
См. также isRowHidden() и setColumnHidden().
void QTreeView::setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags command)
Переопределяет: QAbstractItemView::setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags flags).
Применяет команду выбора command к элементам внутри или затрагивающим прямоугольник rect.
См. также selectionCommand().
void QTreeView::setSelectionModel(QItemSelectionModel *selectionModel)
Переопределяет: QAbstractItemView::setSelectionModel(QItemSelectionModel *selectionModel).
void QTreeView::setTreePosition(int index)
Указывает, что структура дерева должна быть размещена на логическом индексе index. Если установлено значение -1, то дерево всегда следует визуальному индексу 0.
Данная функция была введена в Qt 5.2.
См. также treePosition(), QHeaderView::swapSections() и QHeaderView::moveSection().
int QTreeView::sizeHintForColumn(int column) const
Переопределяет: QAbstractItemView::sizeHintForColumn(int column) const.
Возвращает размер подсказки для ширины column или -1, если модель отсутствует.
Если вам нужно установить ширину определенного столбца на фиксированное значение, вызовите QHeaderView::resizeSection() на заголовке виджета.
Если вы переопределяете эту функцию в подклассе, обратите внимание, что возвращаемое значение используется только при вызове resizeColumnToContents(). В этом случае, если требуется большая ширина столбца, либо заголовком виджета, либо делегатом элемента, эта ширина будет использована вместо неё.
См. также QWidget::sizeHint, header() и QHeaderView::resizeContentsPrecision().
void QTreeView::timerEvent(QTimerEvent *event)
Переопределяет: QAbstractItemView::timerEvent(QTimerEvent *event).
int QTreeView::treePosition() const
Возвращает логический индекс, на котором размещено дерево. Если возвращаемое значение -1, дерево размещено на визуальном индексе 0.
Данная функция была введена в Qt 5.2.
См. также setTreePosition().
void QTreeView::updateGeometries()
Переопределяет: QAbstractItemView::updateGeometries().
int QTreeView::verticalOffset() const
Переопределяет: QAbstractItemView::verticalOffset() const.
Возвращает вертикальное смещение элементов в виджете QTreeView.
См. также horizontalOffset().
bool QTreeView::viewportEvent(QEvent *event)
Переопределяет: QAbstractItemView::viewportEvent(QEvent *event).
QSize QTreeView::viewportSizeHint() const
Переопределяет: QAbstractItemView::viewportSizeHint() const.
QRect QTreeView::visualRect(const QModelIndex &index) const
Переопределяет: QAbstractItemView::visualRect(const QModelIndex &index) const.
Возвращает прямоугольник на области виджета, занимаемый элементом в index. Если индекс не виден или явно скрыт, возвращаемый прямоугольник недействителен.
QRegion QTreeView::visualRegionForSelection(const QItemSelection &selection) const
Переопределяет: QAbstractItemView::visualRegionForSelection(const QItemSelection &selection) const.
Возвращает прямоугольник из области виджета для элементов в заданном selection.
Начиная с версии 4.7, возвращаемая область содержит только прямоугольники, пересекающиеся (или включенные в) область виджета.