QTreeWidgetItemIterator 类
QTreeWidgetItemIterator 类提供了遍历 QTreeWidget 实例中项的一种方式。 更多...
| 头文件 | #include <QTreeWidgetItemIterator> | 
| CMake | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) | 
| qmake | QT += widgets | 
公共类型
| 枚举 | IteratorFlag { All, Hidden, NotHidden, Selected, Unselected, …, UserFlag } | 
| 标志 | IteratorFlags | 
公共函数
| QTreeWidgetItemIterator(QTreeWidget *widget, QTreeWidgetItemIterator::IteratorFlags flags = All) | |
| QTreeWidgetItemIterator(QTreeWidgetItem *item, QTreeWidgetItemIterator::IteratorFlags flags = All) | |
| QTreeWidgetItemIterator(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 & | operator=(const QTreeWidgetItemIterator &it) | 
详细描述
迭代器将遍历项目的预遍历顺序,因此先访问父节点然后再继续到子节点。
例如,以下代码示例遍历树中的每个项目,检查第一列中的文本与用户指定的搜索字符串进行比较
QTreeWidgetItemIterator it(treeWidget); while (*it) { if ((*it)->text(0) == itemText) (*it)->setSelected(true); ++it; }
也可以通过将某些 标志 传递给 QTreeWidgetItemIterator 的构造函数来过滤掉某些类型的节点。
另请参阅 QTreeWidget、模型/视图编程 和 QTreeWidgetItem。
成员类型文档
enum QTreeWidgetItemIterator::IteratorFlag
flags 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 值的 OR 组合。
成员函数说明
[显式] QTreeWidgetItemIterator::QTreeWidgetItemIterator(QTreeWidget *widget, QTreeWidgetItemIterator::IteratorFlags flags = All)
为给定的 widget 构造一个迭代器,该迭代器使用指定的 flags 来确定在迭代过程中找到哪些项。迭代器被设置为指向该 widget 中包含的第一个顶级项,或者如果顶级项不匹配 flags,则指向下一个匹配的项。
另请参阅QTreeWidgetItemIterator::IteratorFlag。
[显式] QTreeWidgetItemIterator::QTreeWidgetItemIterator(QTreeWidgetItem *item, QTreeWidgetItemIterator::IteratorFlags flags = All)
为给定的 item 构造一个迭代器,该迭代器使用指定的 flags 来确定在迭代过程中找到哪些项。如果 item 不匹配 flags,则迭代器被设置为指向 item,或指向下一个匹配的项。
另请参阅QTreeWidgetItemIterator::IteratorFlag。
QTreeWidgetItemIterator::QTreeWidgetItemIterator(const QTreeWidgetItemIterator &it)
为与 it 相同的 QTreeWidget 构造一个迭代器。当前迭代器项被设置为指向 it 的当前项。
[noexcept] 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。返回结果迭代器。
QTreeWidgetItemIterator &QTreeWidgetItemIterator::operator=(const QTreeWidgetItemIterator &it)
赋值操作。复制 it 并返回其迭代器的引用。
© 2024 The Qt Company Ltd. 本文档中包含的贡献文档的版权归其各自的所有者所有。本提供的文档受免费软件基金会发布的 GNU自由文档许可版本1.3 条款的约束。Qt及其相关标志是芬兰和/或全球其他地区的The Qt Company Ltd.的商标。所有其他商标均为其各自所有者的财产。