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.的商标。所有其他商标均为其各自所有者的财产。