Класс 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 является псевдонимом для 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 для определения элементов, которые будут найдены во время итерации. Итератор устанавливается на первый элемент верхнего уровня, содержащийся в widget, или на следующий соответствующий элемент, если элемент верхнего уровня не соответствует флагам.
См. также 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.1/qtreewidgetitemiterator.html