Spec-Zone.ru › Qt

Класс QTreeWidgetItemIterator

Класс QTreeWidgetItemIterator предоставляет способ итерации по элементам в экземпляре QTreeWidget. Подробнее...

Заголовок: #include <QTreeWidgetItemIterator>
CMake: find_package(Qt6 COMPONENTS Widgets REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
  • Список всех членов, включая унаследованные

Типы публичного интерфейса

Перечисление IteratorFlag { Все, Скрытые, НеСкрытые, Выбранные, НеВыбранные, …, ФлагПользователя }
Флаги IteratorFlags

Публичные функции

QTreeWidgetItemIterator(QTreeWidgetItem *item, QTreeWidgetItemIterator::IteratorFlags flags = Все)
QTreeWidgetItemIterator(QTreeWidget *widget, QTreeWidgetItemIterator::IteratorFlags flags = Все)
QTreeWidgetItemIterator(const QTreeWidgetItemIterator &it)
QTreeWidgetItemIterator & operator=(const QTreeWidgetItemIterator &it)
~QTreeWidgetItemIterator()
QTreeWidgetItem * operator*() const
QTreeWidgetItemIterator & operator++()
const QTreeWidgetItemIterator operator++(int)
QTreeWidgetItemIterator & operator+=(int n)
QTreeWidgetItemIterator & operator--()
const QTreeWidgetItemIterator operator--(int)
QTreeWidgetItemIterator & operator-=(int n)

Подробное описание

Итератор будет обходить элементы в порядке предварительного обхода, посещая родительский узел перед продолжением к дочерним узлам.

Например, следующие примеры кода обрабатывают каждый элемент в дереве, проверяя текст в первом столбце на соответствие заданной пользователем строке поиска:

    QTreeWidgetItemIterator it(treeWidget);
    while (*it) {
        if ((*it)->text(0) == itemText)
            (*it)->setSelected(true);
        ++it;
    }

Также возможно отфильтровать определенные типы узлов, передавая определенные флаги в конструктор QTreeWidgetItemIterator.

См. также QTreeWidget, Программирование модели/представления и QTreeWidgetItem.

Документация по типам членов

Перечисление QTreeWidgetItemIterator::IteratorFlagФлаги QTreeWidgetItemIterator::IteratorFlags

Эти флаги могут быть переданы конструктору QTreeWidgetItemIterator (ИЛИ-соединение, если используется более одного), чтобы итератор обходил только элементы, которые соответствуют заданным флагам.

Постоянная Значение
QTreeWidgetItemIterator::All 0x00000000
QTreeWidgetItemIterator::Hidden 0x00000001
QTreeWidgetItemIterator::NotHidden 0x00000002
QTreeWidgetItemIterator::Selected 0x00000004
QTreeWidgetItemIterator::Unselected 0x00000008
QTreeWidgetItemIterator::Selectable 0x00000010
QTreeWidgetItemIterator::NotSelectable 0x00000020
QTreeWidgetItemIterator::DragEnabled 0x00000040
QTreeWidgetItemIterator::DragDisabled 0x00000080
QTreeWidgetItemIterator::DropEnabled 0x00000100
QTreeWidgetItemIterator::DropDisabled 0x00000200
QTreeWidgetItemIterator::HasChildren 0x00000400
QTreeWidgetItemIterator::NoChildren 0x00000800
QTreeWidgetItemIterator::Checked 0x00001000
QTreeWidgetItemIterator::NotChecked 0x00002000
QTreeWidgetItemIterator::Enabled 0x00004000
QTreeWidgetItemIterator::Disabled 0x00008000
QTreeWidgetItemIterator::Editable 0x00010000
QTreeWidgetItemIterator::NotEditable 0x00020000
QTreeWidgetItemIterator::UserFlag 0x01000000

Тип IteratorFlags — это typedef для QFlags<IteratorFlag>. Он хранит результат побитового ИЛИ соединения значений IteratorFlag.

Документация по функциям-членам

QTreeWidgetItemIterator::QTreeWidgetItemIterator(QTreeWidgetItem *item, QTreeWidgetItemIterator::IteratorFlags flags = Все)

Конструирует итератор для заданного item, который использует указанные flags для определения, какие элементы будут найдены во время итерации. Итератор устанавливается в указание на item или следующий соответствующий элемент, если item не соответствует флагам.

См. также QTreeWidgetItemIterator::IteratorFlag.

QTreeWidgetItemIterator::QTreeWidgetItemIterator(QTreeWidget *widget, QTreeWidgetItemIterator::IteratorFlags flags = Все)

Конструирует итератор для заданного widget, который использует указанные flags для определения, какие элементы будут найдены во время итерации. Итератор устанавливается в указание на первый элемент верхнего уровня, содержащийся в виджете, или следующий соответствующий элемент, если элемент верхнего уровня не соответствует флагам.

См. также QTreeWidgetItemIterator::IteratorFlag.

QTreeWidgetItemIterator::QTreeWidgetItemIterator(const QTreeWidgetItemIterator &it)

Конструирует итератор для того же QTreeWidget, что и it. Текущий итератор устанавливается на текущий элемент it.

QTreeWidgetItemIterator &QTreeWidgetItemIterator::operator=(const QTreeWidgetItemIterator &it)

Присваивание. Создаёт копию it и возвращает ссылку на её итератор.

QTreeWidgetItemIterator::~QTreeWidgetItemIterator()

Удаляет итератор.

QTreeWidgetItem *QTreeWidgetItemIterator::operator*() const

Оператор разыменования. Возвращает указатель на текущий элемент.

QTreeWidgetItemIterator &QTreeWidgetItemIterator::operator++()

Префиксный оператор ++ (++it) перемещает итератор к следующему соответствующему элементу и возвращает ссылку на получившийся итератор. Устанавливает текущий указатель на nullptr если текущий элемент — последний соответствующий элемент.

const QTreeWidgetItemIterator QTreeWidgetItemIterator::operator++(int)

Постфиксный оператор ++ (it++) перемещает итератор к следующему соответствующему элементу и возвращает итератор на ранее текущий элемент.

QTreeWidgetItemIterator &QTreeWidgetItemIterator::operator+=(int n)

Перемещает итератор вперёд на n соответствующих элементов. (Если n отрицательное, итератор перемещается назад.)

Если текущий элемент выходит за пределы последнего элемента, указатель текущего элемента устанавливается в nullptr. Возвращает получившуюся итератор.

QTreeWidgetItemIterator &QTreeWidgetItemIterator::operator--()

Префиксный оператор -- (--it) перемещает итератор к предыдущему соответствующему элементу и возвращает ссылку на получившуюся итератор. Устанавливает текущий указатель в nullptr если текущий элемент является первым соответствующим элементом.

const QTreeWidgetItemIterator QTreeWidgetItemIterator::operator--(int)

Постфиксный оператор -- (it--) делает предыдущий соответствующий элемент текущим и возвращает итератор на ранее текущий элемент.

QTreeWidgetItemIterator &QTreeWidgetItemIterator::operator-=(int n)

Перемещает итератор назад на n соответствующих элементов. (Если n отрицательное, итератор перемещается вперёд.)

Если текущий элемент находится за пределами последнего элемента, указатель текущего элемента устанавливается в nullptr. Возвращает получившуюся итератор.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qtreewidgetitemiterator.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API